[unification] is a concrete implementation of logical first-order unification and library to apply a first-order unification procedure [unify] given by the library on two terms of [Termtype] given by the library.
A solution of a unification problem is a substitution, that is, a mapping assigning a symbolic value to each variable of the problem's expressions. The unification algorithm reports unsolvability for a given problem or computes a complete, and minimal singleton substitution set containing the so-called most general unifier, that is, a set covering all its solutions, and containing no redundant members.
import "package:tailcalls/tailcalls.dart"; import "package:unification/unification.dart"; var test = unify( new List() ..add( new Tupl( new Term("b0", [new Term("b1", ),new Term("b2", )]), new Term("b0", [new Term("b1", ),new Term("b2", )]), ), ), ).result(); var mgu = test; print(mgu.toString());
Read more about unification in logic on Wikipedia.
Add this to your package's pubspec.yaml file:
dependencies: unification: "^0.0.1+1"
You can install packages from the command line:
$ pub get
Alternatively, your editor might support
Check the docs for your editor to learn more.
Now in your Dart code, you can use:
|0.0.1+1||Dec 16, 2017|
|0.0.1||Dec 16, 2017|
We analyzed this package, and provided a score, details, and suggestions below.
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Detected platforms: unsure
Error(s) prevent platform classification.
Fix dependencies in
pub upgradefailed with the following output:
ERR: Package unification requires SDK version >=1.8.0 <=2.0.0-dev.8.0 but the current SDK is 2.0.0-dev.20.0.
Fix platform conflicts.
Make sure none of the libraries use mutually exclusive dependendencies.
Fix issues reported by
dartanalyzerreported 1 error(s) and 0 warning(s).
The description is too short.
Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.
Package is pre-v1 release.
While there is nothing inherently wrong with versions of
0.*.*, it usually means that the author is still experimenting with the general direction API.
Maintain an example.
Create a short demo in the
example/directory to show how to use this package. Common file name patterns include:
example.dartor you could also use
|Dart SDK||>=1.8.0 <=2.0.0-dev.8.0|