## Monotonicity Inference for Higher-Order Formulas (2010)

### Cached

### Download Links

Citations: | 9 - 8 self |

### BibTeX

@MISC{Blanchette10monotonicityinference,

author = {Jasmin Christian Blanchette and Alexander Krauss},

title = {Monotonicity Inference for Higher-Order Formulas},

year = {2010}

}

### OpenURL

### Abstract

Formulas are often monotonic in the sense that if the formula is satisfiable for given domains of discourse, it is also satisfiable for all larger domains. Monotonicity is undecidable in general, but we devised two calculi that infer it in many cases for higher-order logic. The stronger calculus has been implemented in Isabelle’s model finder Nitpick, where it is used to prune the search space, leading to dramatic speed improvements for formulas involving many atomic types.

### Citations

719 |
Isabelle/HOL: A Proof Assistant for Higher-Order Logic
- Nipkow, Paulson, et al.
- 2002
(Show Context)
Citation Context ...ily adapted to handle inductive datatypes (Sect. 7), which are pervasive in HOL formalizations. Our evaluation is done in the context of Nitpick (Sect. 8), a counterexample generator for Isabelle/HOL =-=[13]-=-. Although the focus is on HOL, the approach could be adapted to any logic that provides unbounded quantification. In particular, our results can be directly applied to many-sorted FOL with equality, ... |

393 | Simplification by Cooperating Decision Procedures - Nelson, Oppen - 1979 |

329 | Foundations for Programming Languages - Mitchell - 1996 |

304 |
An Introduction to Mathematical Logic and Type Theory: To Truth Through Proof. Applied Logic Series
- Andrews
- 2002
(Show Context)
Citation Context ...xploit such theorems to speed up the search. Our approach is complementary and could be called a “large model” theorem. 3 Higher-Order Logic Our presentation of HOL is very similar to that of Andrews =-=[1]-=-, but instead of a single type ι of individuals, we use type variables α, β, γ to denote uninterpreted types. Definition 3.1 (Syntax). The types and terms of HOL are that of the simply-typed λ-calculu... |

292 | Software Abstractions : Logic, Language, and Analysis - Jackson - 2006 |

198 |
Melham, editors. Introduction to HOL: A Theorem Proving Environment for Higher Order Logic
- Gordon, F
- 1993
(Show Context)
Citation Context ...d using the standard typing rules and write c and x instead of c σ and x σ when the type σ is irrelevant or is clear from the context. A formula is a term of type o. Unlike in Gordon’s version of HOL =-=[6]-=-, on which several popular proof assistants [7, 13, 15] are based, we treat polymorphism in the metalanguage: Polymorphic constants such as equality are expressed as collections of constants, one for ... |

96 |
A micromodularity mechanism
- Jackson, Shlyakhter, et al.
- 2001
(Show Context)
Citation Context ...ecification (e.g., to check if a set of axioms is satisfiable) and for producing counterexamples. Notable model finders include Paradox [5], MACE [10], and SEM [18] for first-order logic (FOL), Alloy =-=[9]-=- and Kodkod [16] for first-order relational logic, and Nitpick [3] and Refute [17] for higher-order logic (HOL). Model finders for many-sorted or typed logics typically work by systematically enumerat... |

95 | A Davis-Putnam program and its application to finite first-order model seach: Quasigroup existence problems
- McCune
- 1994
(Show Context)
Citation Context ...models of formulas. They are useful for exploring a specification (e.g., to check if a set of axioms is satisfiable) and for producing counterexamples. Notable model finders include Paradox [5], MACE =-=[10]-=-, and SEM [18] for first-order logic (FOL), Alloy [9] and Kodkod [16] for first-order relational logic, and Nitpick [3] and Refute [17] for higher-order logic (HOL). Model finders for many-sorted or t... |

72 | Sem: a system for enumerating models
- Zhang, Zhang
- 1995
(Show Context)
Citation Context ...ulas. They are useful for exploring a specification (e.g., to check if a set of axioms is satisfiable) and for producing counterexamples. Notable model finders include Paradox [5], MACE [10], and SEM =-=[18]-=- for first-order logic (FOL), Alloy [9] and Kodkod [16] for first-order relational logic, and Nitpick [3] and Refute [17] for higher-order logic (HOL). Model finders for many-sorted or typed logics ty... |

69 | HOL Light: A tutorial introduction
- Harrison
- 1996
(Show Context)
Citation Context ...nd x instead of c σ and x σ when the type σ is irrelevant or is clear from the context. A formula is a term of type o. Unlike in Gordon’s version of HOL [6], on which several popular proof assistants =-=[7, 13, 15]-=- are based, we treat polymorphism in the metalanguage: Polymorphic constants such as equality are expressed as collections of constants, one for each type. This suffices for the purpose of monotonicit... |

60 | Kodkod: A relational model finder
- Torlak, Jackson
- 2007
(Show Context)
Citation Context ...g., to check if a set of axioms is satisfiable) and for producing counterexamples. Notable model finders include Paradox [5], MACE [10], and SEM [18] for first-order logic (FOL), Alloy [9] and Kodkod =-=[16]-=- for first-order relational logic, and Nitpick [3] and Refute [17] for higher-order logic (HOL). Model finders for many-sorted or typed logics typically work by systematically enumerating the domain c... |

42 | Inductive datatypes in HOL - lessons learned in formal-logic engineering
- Wenzel
(Show Context)
Citation Context ...of introducing new types in Isabelle/HOL is to declare an inductive datatype using the command datatype ¯α κ = C1 σ11 ... σ1k1 | ··· | Cn σn1 ... σnkn Inductive datatypes are a derived concept in HOL =-=[2]-=-. However, our analysis benefits from treating them specially as opposed to unfolding the underlying construction. The datatype declaration introduces the type constructor κ, together with the term co... |

30 | A brief overview of HOL4
- Slind, Norrish
- 2008
(Show Context)
Citation Context ...nd x instead of c σ and x σ when the type σ is irrelevant or is clear from the context. A formula is a term of type o. Unlike in Gordon’s version of HOL [6], on which several popular proof assistants =-=[7, 13, 15]-=- are based, we treat polymorphism in the metalanguage: Polymorphic constants such as equality are expressed as collections of constants, one for each type. This suffices for the purpose of monotonicit... |

28 | Substructural type systems - Walker - 2005 |

25 |
New techniques that improve MACE-style model finding
- Claessen, Sörensson
(Show Context)
Citation Context ...theoretic models of formulas. They are useful for exploring a specification (e.g., to check if a set of axioms is satisfiable) and for producing counterexamples. Notable model finders include Paradox =-=[5]-=-, MACE [10], and SEM [18] for first-order logic (FOL), Alloy [9] and Kodkod [16] for first-order relational logic, and Nitpick [3] and Refute [17] for higher-order logic (HOL). Model finders for many-... |

22 | Nitpick: A counterexample generator for higher-order logic based on a relational model finder
- Blanchette, Nipkow
- 2010
(Show Context)
Citation Context ... for producing counterexamples. Notable model finders include Paradox [5], MACE [10], and SEM [18] for first-order logic (FOL), Alloy [9] and Kodkod [16] for first-order relational logic, and Nitpick =-=[3]-=- and Refute [17] for higher-order logic (HOL). Model finders for many-sorted or typed logics typically work by systematically enumerating the domain cardinalities for the atomic types (type variables ... |

20 | Relational analysis of algebraic datatypes
- Kuncak, Jackson
- 2005
(Show Context)
Citation Context ...ions of the language, which allow such references [8, p.165]. Nonetheless, many Alloy formulas are monotonic, notably the existential–bounded-universal class of formulas studied by Kuncak and Jackson =-=[10]-=-. For some logics, small model theorems give an upper bound on the cardinality of a sort [4], primitive type [12], or variable’s domain [15]. If no model exists below that bound, no larger models exis... |

19 | Combining decision procedures for sorted theories - Tinelli, Zarba - 2004 |

17 | SAT-based Finite Model Generation for Higher-Order Logic
- Weber
- 2008
(Show Context)
Citation Context ...counterexamples. Notable model finders include Paradox [5], MACE [10], and SEM [18] for first-order logic (FOL), Alloy [9] and Kodkod [16] for first-order relational logic, and Nitpick [3] and Refute =-=[17]-=- for higher-order logic (HOL). Model finders for many-sorted or typed logics typically work by systematically enumerating the domain cardinalities for the atomic types (type variables and other uninte... |

9 |
The small model property: How small can it be
- Pnueli, Rodeh, et al.
(Show Context)
Citation Context ...onic, and this could be exploited to speed up the Alloy Analyzer. For some logics, small model theorems give an upper bound on the cardinality of a sort [4], primitive type [11], or variable’s domain =-=[14]-=-. If no model exists below that bound, no larger models exist. Paradox and Alloy exploit such theorems to speed up the search. Our approach is complementary and could be called a “large model” theorem... |

8 |
Towards a small model theorem for data independent systems in Alloy
- Momtahan
- 2005
(Show Context)
Citation Context ...fications are in fact monotonic, and this could be exploited to speed up the Alloy Analyzer. For some logics, small model theorems give an upper bound on the cardinality of a sort [4], primitive type =-=[11]-=-, or variable’s domain [14]. If no model exists below that bound, no larger models exist. Paradox and Alloy exploit such theorems to speed up the search. Our approach is complementary and could be cal... |

7 | Verifying a hotel key card system - Nipkow - 2006 |

6 | Sort it out with monotonicity: translating between many-sorted and unsorted first-order logic - Claessen, Lillieström, et al. - 2011 |

3 |
Private communication
- Claessen
- 2009
(Show Context)
Citation Context ...ss, many Alloy specifications are in fact monotonic, and this could be exploited to speed up the Alloy Analyzer. For some logics, small model theorems give an upper bound on the cardinality of a sort =-=[4]-=-, primitive type [11], or variable’s domain [14]. If no model exists below that bound, no larger models exist. Paradox and Alloy exploit such theorems to speed up the search. Our approach is complemen... |