Congruence closure.
Function or value | Description | ||
|
Example
Evaluates to true .
Example
Evaluates to false .
Example
Throws System.Exception: dest_eq: not an equation .
|
||
|
Example
Evaluates to true .
Example
Evaluates to true .
Example
Throws System.Exception: dest_eq: not an equation .
|
||
|
Example
Evaluates to true .
Example
Evaluates to false .
|
||
Full Usage:
emerge (s, t) (eqv, pfn)
Parameters:
term
-
The first input term.
t : term
-
The second input term.
eqv : partition<term>
-
The input congruence.
pfn : func<term, term list>
-
The input `predecessor function'.
Returns: partition<term> * func<term, term list>
The extended congruence relation together with the updated predecessor
function.
|
The algorithm maintains a `predecessor function'
Example
val f: obj
val pfn: obj
Evaluates to ([(``0``, Nonterminal ``1``); (``1``, Terminal (``1``, 2))], [(``1``, [])]) .
|
||
|