Mmt is a formal framework that combines the flexibility of knowledge representation languages like OpenMath with the formal rigor of logical frameworks like LF. It systematically abstracts from theoretical and practical aspects of individual formal languages and tries to develop as many solutions as possible generically. In this work, we allow Mmt theories to declare user-defined literals, which makes literals as user-extensible as operators, axioms, and notations. This is particularly important for framework languages, which must be able to represent any choice of literals. Theoretically, our literals are introduced by importing a model that defines the denotations of some types and function symbols. Practically, Mmt is coupled with a programming language, in which these models are defined. Our results are implemented in the Mmt system. In particular, literals and computation on them are integrated with the parser and type checker.
展开▼