Scroll to navigation

LEM(1) User Commands LEM(1)

NAME

lem - Tool merging math and logic for executable definitions

DESCRIPTION

Lem 2022-12-10 example usage: lem -hol -ocaml test.lem

generate OCaml
generate LaTeX for each module separately
generate LaTeX in a single file
generate Html
generate HOL
generate Isabelle
generate Coq
generate Lem output after simple transformations
generate input on stdout
add a library path, in addition to the standard library at '/build/reproducible-path/lem-2022-12-10+dfsg2/debian/tmp/bin/library'. To change the latter, set the LEMLIB environment variable. Directories in the library path may optionally be associated with Isabelle session names, e.g. -lib MyLib=path/to/mylib. The standard library is associated with the session name LEM by default.
prohibit reordering modules given to lem as explicit arguments in order during dependency resolution
the output directory (the default is the dir the files reside in)
treat the file as input only and generate no output for it
generate only output files, whose content really changed compared to the existing file
generate only auxiliary output files
generate no (none) auxiliary-information, only auxiliaries that can be handled automatically (auto) or all (all) auxiliary information
print a backtrace for all errors (lem needs to be compiled in debug mode)
special case HTML and LaTeX output for Cerberus Ail and Core
print the environment signature on stdout
add location annotations to the output
use paths in Isabelle import statements instead of session-qualified imports
use datatype_record instead of record in Isabelle output
print version
activates pattern compilation for the identity backend. This is used for debugging.
activates dictionary passing transformations for the identity backend. This is used for debugging.
prints target-specific let-bindings as normal let bindings in the TeX backend.
include libraries in the TeX backend.
try to remove toplevel matches in HOL4 output.
remove failwith branches in match statements in the prover backends.
suppresses Lem's renaming facilities.
force library output with tex_all
reports the name of any default instance invoked at a given type.
warning level of all warnings
warning level of miscellaneous warnings (default warn)
warning level of ambiguous code (default warn)
warning level of automatically imported modules (default ign)
warning level of compile messages (default warn)
warning level of overridden instance declarations (default ign)
warning level of equality of type is undecidable (default ign)
warning level of pattern compilation (default warn)
warning level of non-exhaustive pattern matches (default warn)
warning level of failed pattern compilation (default warn)
warning level of redundant patterns (default warn)
warning level of automatic renamings (default warn)
warning level of resorted record fields and function clauses (default warn)
warning level of unused variables (default warn)
Display this list of options
Display this list of options

SEE ALSO

The full documentation for lem is maintained as a Texinfo manual. If the info and lem programs are properly installed at your site, the command

info lem

should give you access to the complete manual.

January 2025 lem 2022-12-10+dfsg2