equal
deleted
inserted
replaced
571 following values: |
571 following values: |
572 |
572 |
573 \begin{enum} |
573 \begin{enum} |
574 \item[$\bullet$] \textbf{\textit{many\_typed}:} Use the prover's support for |
574 \item[$\bullet$] \textbf{\textit{many\_typed}:} Use the prover's support for |
575 many-typed first-order logic if available; otherwise, fall back on |
575 many-typed first-order logic if available; otherwise, fall back on |
576 \textit{mangled}. The problem is monomorphized, meaning that the problem's type |
576 \textit{mangled\_preds}. The problem is monomorphized, meaning that the |
577 variables are instantiated with heuristically chosen ground types. |
577 problem's type variables are instantiated with heuristically chosen ground |
578 Monomorphization can simplify reasoning but also leads to larger fact bases, |
578 types. Monomorphization can simplify reasoning but also leads to larger fact |
579 which can slow down the ATPs. |
579 bases, which can slow down the ATPs. |
580 |
580 |
581 \item[$\bullet$] \textbf{\textit{preds}:} Types are encoded using a binary predicate |
581 \item[$\bullet$] \textbf{\textit{preds}:} Types are encoded using a binary predicate |
582 $\mathit{has\_type\/}(\tau, t)$ that restricts the range of bound variables. |
582 $\mathit{has\_type\/}(\tau, t)$ that restricts the range of bound variables. |
583 Constants are annotated with their types, supplied as extra arguments, to |
583 Constants are annotated with their types, supplied as extra arguments, to |
584 resolve overloading. |
584 resolve overloading. |
626 \textit{mono\_preds}?, |
626 \textit{mono\_preds}?, |
627 \textit{mangled\_preds}?, \\ |
627 \textit{mangled\_preds}?, \\ |
628 \textit{tags}?, |
628 \textit{tags}?, |
629 \textit{mono\_tags}?, |
629 \textit{mono\_tags}?, |
630 \textit{mangled\_tags}?:} \\ |
630 \textit{mangled\_tags}?:} \\ |
631 If the exclamation mark (!) is replaced by an question mark (?), the type |
631 If the exclamation mark (!)\ is replaced by an question mark (?),\ the type |
632 systems type only nonmonotonic (and hence especially dangerous) types. Not |
632 systems type only nonmonotonic (and hence especially dangerous) types. Not |
633 implemented yet. |
633 implemented yet. |
634 |
634 |
635 \item[$\bullet$] \textbf{\textit{const\_args}:} |
635 \item[$\bullet$] \textbf{\textit{const\_args}:} |
636 Constants are annotated with their types, supplied as extra arguments, to |
636 Constants are annotated with their types, supplied as extra arguments, to |
648 For SMT solvers and ToFoF-E, the type system is always \textit{many\_typed}. |
648 For SMT solvers and ToFoF-E, the type system is always \textit{many\_typed}. |
649 |
649 |
650 \opdefault{monomorphize\_limit}{int}{\upshape 4} |
650 \opdefault{monomorphize\_limit}{int}{\upshape 4} |
651 Specifies the maximum number of iterations for the monomorphization fixpoint |
651 Specifies the maximum number of iterations for the monomorphization fixpoint |
652 construction. The higher this limit is, the more monomorphic instances are |
652 construction. The higher this limit is, the more monomorphic instances are |
653 potentially generated. |
653 potentially generated. Whether monomorphization takes place depends on the |
|
654 type system used. |
654 \end{enum} |
655 \end{enum} |
655 |
656 |
656 \subsection{Relevance Filter} |
657 \subsection{Relevance Filter} |
657 \label{relevance-filter} |
658 \label{relevance-filter} |
658 |
659 |