# cmu: Unification in a Commutative Monoid

[ algebra, library, program ] [ Propose Tags ]

The unification problem is given the problem statement t =? t', find a most general substitution s such that s(t) = s(t') modulo the axioms of a commutative monoid. Substitition s is more general than s' if there is a substitition s" such that s' = s" o s.

Versions [RSS] [faq] 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10, 1.11, 1.12 ChangeLog array, base (>=3 && <5), containers (>=0.3) [details] LicenseRef-GPL ramsdell@mitre.org Algebra by JohnRamsdell at 2012-04-25T17:16:09Z NixOS:1.12 cmu 9655 total (13 in the last 30 days) (no votes yet) [estimated by Bayesian average] λ λ λ Docs uploaded by userBuild status unknown

## Modules

[Index]

• Algebra
• CommutativeMonoid

#### Maintainer's Corner

For package maintainers and hackage trustees

Candidates

• No Candidates

## Readme for cmu-1.6

[back to package description]
This package contains a library for unification in
commutative monoid and a program that exercises the library.

\$ cmu
Commutative monoid unification -- :? for help
cmu> 2x+y=3z
Problem:   2x + y = 3z
Unifier:   [x : g0 + 3g2,y : g0 + 3g1,z : g0 + g1 + 2g2]

cmu> 2x=x+y
Problem:   2x = x + y
Unifier:   [x : g0,y : g0]

cmu> 64x=41y+a
Problem:   64x = a + 41y
Unifier:   [a : 5g0 + 2g1 + 23g2 + g3 + 64g4,x : 2g0 + 9g1 + g2 + 25g3 + g4 + 41g5,y : 3g0 + 14g1 + g2 + 39g3 + 64g5]

cmu> :quit