# The cmu package

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.

## Properties

Versions 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9, 1.10 ChangeLog array, base (<=4.1.0.0), containers [details] GPL ramsdell@mitre.org Algebra Fri Sep 18 12:30:42 UTC 2009 by JohnRamsdell NixOS:1.10 2422 total (9 in the last 30 days) 0 [] Docs uploaded by userBuild status unknown Hackage Matrix CI

## Modules

• Algebra
• CommutativeMonoid

[Index]

#### Maintainer's Corner

For package maintainers and hackage trustees

```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
```