This module defines the internal representation of HOL terms. This is done by defining an abstract datatype for terms, and then primitive syntax functions for constructing and destructing terms, and support for constant declaration. The primitive syntax constructors ensure that only well- formed terms can be constructed. This module is a trusted component of the system.
Function or value | Description |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Full Usage:
is_const_name x
Parameters:
string
Returns: bool
|
|
|
|
|
|
|
|
|
Takes a constant name and an old-to-new tyvar instantiation list, and returns the constant term with its generic type's tyvars instantiated accordingly.
Note that the instantiation domain is allowed to contain tyvars that are not in the generic type: these are just ignored.
Fails if the constant has not been declared.
|
|
|
|
This is the primitive declaration command for constants. It takes a string and a type: the string becomes the name of a new constant in the theory, and the type becomes its generic type.
Any name can be used for a constant, but supplying an existing constant's name will cause failure.
A note of the declaration is reported, and unit is returned.
|
|
|
|
|
|
|
|