structelm — Structure elimination
structelm
[-help
] [-help-all
] [-version
] [Data Options
] [-depth
] [N
-expand
] [sort
-report
] [-binary
] input
This filter reads from
(or
input
.tbf stdin
if not given) an LPE
in .tbf
format,
replaces each variable of sort
by all the
arguments of all the constructors of that sort
,
and writes the LPE to stdout
.
Structured sort, sort
, is then expanded.
An extra variable with a Case function is added to determine to which
constructor a vector of an expanded sort belongs.
The other elimination tools will work better on the output LPE.
Advised is to run rewr -case after
structelm.
-help
Display help information
-help-all
Display all help information
-version
Get the version number of this release
-depth N
The steps of expanding sorts will be repeated
N
times
-expand
sort
The argument sort
is candidate to be expanded.
If no -expand
flag is present then all non-recursive
structured sorts will be expanded.
Expanding more sorts simultaneously can be done by adding
the -expand
flag more times on the command line.
-binary
Use binary Case functions
-report
Display a list of structured sorts and exit