## TFF1: The TPTP typed first-order form with rank-1 polymorphism

### Cached

### Download Links

Citations: | 4 - 3 self |

### BibTeX

@MISC{Blanchette_tff1:the,

author = {Jasmin Christian Blanchette and Andrei Paskevich},

title = { TFF1: The TPTP typed first-order form with rank-1 polymorphism},

year = {}

}

### OpenURL

### Abstract

The TPTP World is a well-established infrastructure for automatic theorem provers. It defines several concrete syntaxes, notably an untyped firstorder form (FOF) and a typed first-order form (TFF0), that have become de facto standards in the automated reasoning community. This paper introduces the TFF1 format, an extension of TFF0 with rank-1 polymorphism. It presents its syntax, typing rules, and semantics, as well as a sound and complete translation to TFF0. The format is designed to be easy to process by existing reasoning tools that support ML-style polymorphism. It opens the door to useful middleware, such as monomorphizers and other translation tools that encode polymorphism in FOF or TFF0. Ultimately, the hope is that TFF1 will be implemented in popular automatic theorem provers.

### Citations

718 |
Isabelle/HOL — A Proof Assistant for HigherOrder Logic
- Nipkow, Paulson, et al.
- 2002
(Show Context)
Citation Context ...malisms (which are otherwise a good match for TFF1). 5.1 Elimination of Phantom Type Variables ML-style formalisms, as implemented in Alt-Ergo [6], Boogie [16], HOL [12], HOL Light [13], Isabelle/HOL =-=[19]-=-, Why3 [8], and several other systems, allow type variables in type signatures, but without explicit ∀-binders. Instead of relying on explicit type arguments, these systems determine the concrete inst... |

598 | A Mathematical Introduction to Logic - Enderton - 2002 |

470 |
P.: Interactive Theorem Proving and Program Development. Coq’Art: The Calculus of Inductive Constructions
- Bertot, Castéran
- 2004
(Show Context)
Citation Context ...2 Type Skolemization Another feature of TFF1 that is not universally supported by systems with polymorphic types is explicit quantification over type variables. For example, while Boogie [16] and Coq =-=[3]-=- allow quantifiers over types, HOL and other ML-style logics provide no such syntax: They consider all type variables implicitly universally quantified at the top of a formula, which recalls the treat... |

69 | HOL Light: A tutorial introduction
- Harrison
- 1996
(Show Context)
Citation Context ...ted by ML-style formalisms (which are otherwise a good match for TFF1). 5.1 Elimination of Phantom Type Variables ML-style formalisms, as implemented in Alt-Ergo [6], Boogie [16], HOL [12], HOL Light =-=[13]-=-, Isabelle/HOL [19], Why3 [8], and several other systems, allow type variables in type signatures, but without explicit ∀-binders. Instead of relying on explicit type arguments, these systems determin... |

50 |
The TPTP Problem Library and associated infrastructure: The FOF and CNF parts, v3.5.0
- Sutcliffe
(Show Context)
Citation Context ...ed infrastructure for supporting research, development, and deployment of automated reasoning tools. It owes its name to its vast problem library, the Thousands of Problems for Theorem Provers (TPTP) =-=[26]-=-. In addition, it specifies concrete syntaxes for problems and solutions: Dozens of reasoning tools implement the TPTP untyped clause normal form (CNF) and first-order form (FOF) for classical first-o... |

41 | Otter 3.3 reference manual
- McCune
- 2003
(Show Context)
Citation Context .... It has often been argued that the gap between the features supported by provers and those needed by applications is too wide, and that rich interchange formats are needed to address this disconnect =-=[15, 17, 22, 24, 31]-=-. A growing number of reasoners can process the recently introduced TPTP “core” typed first-order form (TFF0) [29], with monomorphic types and interpreted arithmetic [14, 21], or the corresponding hig... |

26 | L.C.: Translating higher-order clauses to first-order clauses
- Meng, Paulson
- 2008
(Show Context)
Citation Context ...ue to Enderton [11, §4.3], Stickel [23, p. 99], and Wick and McCune [32, §4]. TFF1 type arguments are reminiscent of System F; a FOF-based encoding that exploits them is described by Meng and Paulson =-=[18]-=-, who also present a translation of axiomatic type classes. Considerable progress has been made lately toward sound, complete, and efficient encodings of polymorphic logics in untyped or monomorphic l... |

26 | Schubert’s steamroller problem: formulations and solutions - Stickel - 1986 |

25 | Why3: Shepherd your herd of provers
- Bobot, Filliâtre, et al.
- 2011
(Show Context)
Citation Context ...ich are otherwise a good match for TFF1). 5.1 Elimination of Phantom Type Variables ML-style formalisms, as implemented in Alt-Ergo [6], Boogie [16], HOL [12], HOL Light [13], Isabelle/HOL [19], Why3 =-=[8]-=-, and several other systems, allow type variables in type signatures, but without explicit ∀-binders. Instead of relying on explicit type arguments, these systems determine the concrete instance of a ... |

24 | A polymorphic intermediate verification language: Design and logical encoding
- Leino, Rümmer
- 2010
(Show Context)
Citation Context ...at are not directly supported by ML-style formalisms (which are otherwise a good match for TFF1). 5.1 Elimination of Phantom Type Variables ML-style formalisms, as implemented in Alt-Ergo [6], Boogie =-=[16]-=-, HOL [12], HOL Light [13], Isabelle/HOL [19], Why3 [8], and several other systems, allow type variables in type signatures, but without explicit ∀-binders. Instead of relying on explicit type argumen... |

23 | Automated Theorem Proving in Software Engineering
- Schumann
- 2001
(Show Context)
Citation Context .... It has often been argued that the gap between the features supported by provers and those needed by applications is too wide, and that rich interchange formats are needed to address this disconnect =-=[15, 17, 22, 24, 31]-=-. A growing number of reasoners can process the recently introduced TPTP “core” typed first-order form (TFF0) [29], with monomorphic types and interpreted arithmetic [14, 21], or the corresponding hig... |

18 | Three years of experience with Sledgehammer, a practical link between automatic and interactive theorem provers
- Paulson
- 2010
(Show Context)
Citation Context ... and a wide range of formats, including FOF, SMT-LIB, and Alt-Ergo’s native syntax. In addition, Why3’s TFF1 parser is being ported to Alt-Ergo [6], so that it can directly process TFF1. Sledgehammer =-=[20]-=-, a tool that bridges the interactive theorem prover Isabelle/HOL and various automatic provers, has now been extended to output pure TFF1 problemsfor Alt-Ergo and Why3 (in addition to FOF, TFF0, and... |

16 | A.: Integrating linear arithmetic into superposition calculus
- Korovin, Voronkov
- 2007
(Show Context)
Citation Context ...is disconnect [15, 17, 22, 24, 31]. A growing number of reasoners can process the recently introduced TPTP “core” typed first-order form (TFF0) [29], with monomorphic types and interpreted arithmetic =-=[14, 21]-=-, or the corresponding higher-order form (THF0) [2]; a polymorphic version of THF0, the full THF, is in the works [28]. Despite the variety of this offering, there is a strong desire in part of the au... |

15 |
Introduction to HOL—A Theorem Proving Environment for Higher Order Logic
- Gordon, Melham
- 1993
(Show Context)
Citation Context ... directly supported by ML-style formalisms (which are otherwise a good match for TFF1). 5.1 Elimination of Phantom Type Variables ML-style formalisms, as implemented in Alt-Ergo [6], Boogie [16], HOL =-=[12]-=-, HOL Light [13], Isabelle/HOL [19], Why3 [8], and several other systems, allow type variables in type signatures, but without explicit ∀-binders. Instead of relying on explicit type arguments, these ... |

15 |
MPTP 0.2: Design, implementation, and initial experiments
- Urban
- 2006
(Show Context)
Citation Context ...o transform it into a versatile translator to FOF and TFF0. 7 Related Work Formalisms. The TPTP family of formats is well established in the automated reasoning community. As part of the MPTP project =-=[30]-=-, Urban designed private extensions of the TPTP FOF syntax with dependent types to accommodate Mizar, as well as translations; these could form the basis of a future TFF2 format. The full THF syntax [... |

14 | C.: Automated reasoning in higher-order logic using the TPTP THF infrastructure
- Sutcliffe, Benzmüller
- 2010
(Show Context)
Citation Context ...rst-order form (TFF0) [29], with monomorphic types and interpreted arithmetic [14, 21], or the corresponding higher-order form (THF0) [2]; a polymorphic version of THF0, the full THF, is in the works =-=[28]-=-. Despite the variety of this offering, there is a strong desire in part of the automated reasoning community for a portable polymorphic first-order format. Many applications require polymorphism, not... |

14 | Automated reasoning about elementary point-set topology - Wick, McCune - 1989 |

13 | The TPTP typed first-order form with arithmetic
- Sutcliffe, Schulz, et al.
(Show Context)
Citation Context ...d that rich interchange formats are needed to address this disconnect [15, 17, 22, 24, 31]. A growing number of reasoners can process the recently introduced TPTP “core” typed first-order form (TFF0) =-=[29]-=-, with monomorphic types and interpreted arithmetic [14, 21], or the corresponding higher-order form (THF0) [2]; a polymorphic version of THF0, the full THF, is in the works [28]. Despite the variety ... |

12 | S.: Handling polymorphism in automated deduction
- Couchot, Lescuyer
- 2007
(Show Context)
Citation Context ...es. They also show how to exploit SMT triggers to prevent unsound variable instantiations in a translation based on type arguments. Bobot and Paskevich [7] extend earlier work by Couchot and Lescuyer =-=[10]-=- to encode polymorphism while preserving arbitrary monomorphic types (e.g., array types). Blanchette et al. [5], building on work by Claessen et al. [9], present a lightweight encoding of polymorphic ... |

11 | N.: Encoding monomorphic and polymorphic types
- Blanchette, Böhme, et al.
(Show Context)
Citation Context ...: Monomorphization algorithms are necessarily incomplete, and it is difficult to encode polymorphism in a complete yet also sound and efficient manner, especially in the presence of interpreted types =-=[3, 5, 11]-=-. Tool authors are reduced to developing their own monomorphizers and type encodings, often using suboptimal schemes. Polymorphism arguably belongs in provers, where it can be implemented simply and e... |

10 | Implementing polymorphism in SMT solvers
- Bobot, Conchon, et al.
- 2008
(Show Context)
Citation Context ...ten using suboptimal schemes. Polymorphism arguably belongs in provers, where it can be implemented simply and efficiently, as demonstrated by the SMT (satisfiability modulo theories) solver Alt-Ergo =-=[6]-=-. This paper introduces the TFF1 format, an extension of TFF0 with rank-1 polymorphism. The extension was designed with the participation of members of the TPTP community, reflecting its needs. Beside... |

10 | Expressing Polymorphic Types in a Many-Sorted Language
- Bobot, Paskevich
- 2011
(Show Context)
Citation Context ...SMT-LIB syntax, while preserving interpreted types. They also show how to exploit SMT triggers to prevent unsound variable instantiations in a translation based on type arguments. Bobot and Paskevich =-=[7]-=- extend earlier work by Couchot and Lescuyer [10] to encode polymorphism while preserving arbitrary monomorphic types (e.g., array types). Blanchette et al. [5], building on work by Claessen et al. [9... |

10 | The SZS ontologies for automated reasoning software
- Sutcliffe
- 2008
(Show Context)
Citation Context ... problem gives the general flavor of TFF1. It first declares and axiomatizes lookup and update operations on maps, then conjectures that update is idempotent for fixed keys and values. Its SZS status =-=[25]-=- is Theorem. tff(map_t, type, map : ($tType * $tType) > $tType). tff(lookup_t, type, lookup : !>[A : $tType, B : $tType]: ((map(A, B) * A) > B)). tff(update_t, type, update : !>[A : $tType, B : $tType... |

10 |
The TPTP World–Infrastructure for automated reasoning
- Sutcliffe
- 2010
(Show Context)
Citation Context ...rphizers and other translation tools that encode polymorphism in FOF or TFF0. Ultimately, the hope is that TFF1 will be implemented in popular automatic theorem provers. 1 Introduction The TPTP World =-=[27]-=- is a well-established infrastructure for supporting research, development, and deployment of automated reasoning tools. It owes its name to its vast problem library, the Thousands of Problems for The... |

9 | G.: THF0—The core of the TPTP language for higherorder logic
- Benzmüller, Rabe, et al.
- 2008
(Show Context)
Citation Context ...reasoners can process the recently introduced TPTP “core” typed first-order form (TFF0) [29], with monomorphic types and interpreted arithmetic [14, 21], or the corresponding higher-order form (THF0) =-=[2]-=-; a polymorphic version of THF0, the full THF, is in the works [28]. Despite the variety of this offering, there is a strong desire in part of the automated reasoning community for a portable polymorp... |

7 |
Learning-assisted automated reasoning with Flyspeck
- Kaliszyk, Urban
(Show Context)
Citation Context ...1. Why3 translates between TFF1 and a wide range of formats, including FOF, SMT-LIB, and Alt-Ergo’s native syntax [5, 7]. In addition, Why3’s TFF1 parser is being ported to Alt-Ergo [4]. HOL(y)Hammer =-=[8]-=- and Sledgehammer [12] integrate various automatic provers in the proof assistants HOL Light and Isabelle/HOL. They have been extended to output pure TFF1 problems for Alt-Ergo and Why3. Using Sledgeh... |

6 | A Flexible Proof Format for SMT: a Proposal
- Besson, Fontaine, et al.
- 2011
(Show Context)
Citation Context ...loading). Polymorphism would make sense there as well, as witnessed by Alt-Ergo. However, the SMT community is still recovering from the upgrade to SMT-LIB 2 and busy defining a standard proof format =-=[4]-=-; implementers would not welcome yet another feature at this point. Moreover, with its support for arithmetic, TFF1 is a reasonable format to implement in an SMT solver if polymorphism is desired. Thi... |

4 |
C.: The SMT-LIB standard—Version 2.0
- Barrett, Stump, et al.
- 2010
(Show Context)
Citation Context ...hat support ML-style polymorphism. TFF1 also opens the door to useful middleware, such as monomorphizers and other tools that encode polymorphism in FOF or TFF0. For SMT solvers, the SMT-LIB 2 format =-=[1]-=- specifies a classical many-sorted logic with equality and interpreted arithmetic, much in the style of TFF0 but with parametric symbol declarations (overloading). Polymorphism would make sense there ... |

3 | N.: Monotonicity or how to encode polymorphic types safely and efficiently
- Blanchette, Böhme, et al.
(Show Context)
Citation Context ... on type arguments. Bobot and Paskevich [7] extend earlier work by Couchot and Lescuyer [10] to encode polymorphism while preserving arbitrary monomorphic types (e.g., array types). Blanchette et al. =-=[5]-=-, building on work by Claessen et al. [9], present a lightweight encoding of polymorphic types that exploits type monotonicity. All of these translations assume elimination of phantom type variables (... |

3 |
C.: Private communication
- Wand, Weidenbach
- 2012
(Show Context)
Citation Context ...ormat is in its infancy, it is supported by several applications, including the SMT solver Alt-Ergo (via Why3). Work has commenced in Saarbrücken to add polymorphism to the superposition prover SPASS =-=[19]-=-. Given that many applications require polymorphism, other reasoning tools are likely to follow suit. The annual CADE Automated System Competition (CASC) will surely have a role to play driving adopti... |

2 |
Intermediate languages—From birth to execution. Boogie
- Kuncak
- 2011
(Show Context)
Citation Context .... It has often been argued that the gap between the features supported by provers and those needed by applications is too wide, and that rich interchange formats are needed to address this disconnect =-=[15, 17, 22, 24, 31]-=-. A growing number of reasoners can process the recently introduced TPTP “core” typed first-order form (TFF0) [29], with monomorphic types and interpreted arithmetic [14, 21], or the corresponding hig... |

2 |
Building theorem provers
- Stickel
- 2009
(Show Context)
Citation Context |

2 | Automated reasoning: Past story and new trends
- Voronkov
- 2003
(Show Context)
Citation Context |