unify 0.1.0 unify: ^0.1.0 copied to clipboard
An implementation of unification to enable logic programming in dart.
Unification #
A library providing implementations of first-order logical unification for dart and flutter.
Getting started #
Add the dependency to your pubspec.yaml file:
dependencies:
unification: #latest version
Add the import statement to your source files:
import 'package:unification/unification.dart';
Or, give it a try and run the example:
dart ./example/main.dart
Modify the example to test more less simple tasks!
Example: #
import "package:unification/unification.dart";
UnificationR<String, String> u = UnificationR<String, String>();
List<Tuple<String, Termtype<String, String>>> res1 = u.unify(
<Tuple<Var<String, String>, Var<String, String>>>[]..add(
Tuple<Var<String, String>, Var<String, String>>(
Var('a'),
Var('a'),
),
),
<Tuple<String, Termtype<String, String>>>[]);
List<Tuple<String, Termtype<String, String>>> res2 = u.unify(
<Tuple<Var<String, String>, Var<String, String>>>[]..add(
Tuple(
Var('a'),
Var('b'),
),
),
<Tuple<String, Termtype<String, String>>>[]);
print(res1);
print(res2);
Read more about unification in logic on Wikipedia.