## Formalizing the Logic-Automaton Connection

### Cached

### Download Links

Citations: | 8 - 1 self |

### BibTeX

@MISC{Berghofer_formalizingthe,

author = {Stefan Berghofer and Markus Reiter and Technische Universität München},

title = {Formalizing the Logic-Automaton Connection},

year = {}

}

### OpenURL

### Abstract

Abstract. This paper presents a formalization of a library for automata on bit strings in the theorem prover Isabelle/HOL. It forms the basis of a reflection-based decision procedure for Presburger arithmetic, which is efficiently executable thanks to Isabelle’s code generator. With this work, we therefore provide a mechanized proof of the well-known connection between logic and automata theory. 1

### Citations

53 | Metatheory and reflection in theorem proving: A survey and critique
- Harrison
- 1995
(Show Context)
Citation Context ...on procedure for such a decidable logic in a theorem prover based on HOL is to write and verify the decision procedure as a recursive function in HOL itself. This approach, which is called reflection =-=[7]-=-, has been used in proof assistants based on type theory for quite a long time. For example, Boutin [4] has used reflection to implement a decision procedure for abelian rings in Coq. Recently, reflec... |

53 | fido: The logic-automaton connection in practice
- Mona
- 1998
(Show Context)
Citation Context ...er arithmetic [5, 12]. While the decision procedures by Chaieb and Nipkow are based on algebraic methods like Cooper’s algorithm, there are also semantic methods, as implemented e.g. in the Mona tool =-=[8]-=- for deciding WS1S formulae. In order to check the validity of a formula, Mona translates it to an automaton on bitstrings and then checks whether it has accepting states. Basin and Friedrich [1] have... |

48 | Executing higher order logic
- Berghofer, Nipkow
- 2002
(Show Context)
Citation Context ... just exchanging the automata for atomic formulae. The specification of the decision procedure is completely executable, and efficient ML code can be generated from it using Isabelle’s code generator =-=[2]-=-. To the best of our knowledge, this is the first formalization of an automata-based decision procedure for Presburger arithmetic in a theorem prover. The paper is structured as follows. In §2, we int... |

45 | Using reflection to build efficient and certified decision procedures
- Boutin
- 1997
(Show Context)
Citation Context ...ision procedure as a recursive function in HOL itself. This approach, which is called reflection [7], has been used in proof assistants based on type theory for quite a long time. For example, Boutin =-=[4]-=- has used reflection to implement a decision procedure for abelian rings in Coq. Recently, reflection has also gained considerable attention in the Isabelle/HOL community. Chaieb and Nipkow have used ... |

35 | On the construction of automata from linear arithmetic constraints
- Wolper, Boigelot
- 2000
(Show Context)
Citation Context ... minimization algorithm, e.g. along the lines of Constable et al. [6]. We also intend to explore other ways of constructing DFAs for Diophantine equations, such as the approach by Wolper and Boigelot =-=[15]-=-, which is more complicated than the one shown in §3.4, but can directly deal with variables over the integers rather than just natural numbers. To improve the performance of the decision procedure on... |

23 | Combining WS1S and HOL
- Basin, Friedrich
- 2000
(Show Context)
Citation Context ...tool [8] for deciding WS1S formulae. In order to check the validity of a formula, Mona translates it to an automaton on bitstrings and then checks whether it has accepting states. Basin and Friedrich =-=[1]-=- have connected Mona to Isabelle/HOL using an oracle-based approach, i.e. they simply trust the answer of the tool. As a motivation for their design decision, they write: Hooking an ‘oracle’ to a theo... |

13 | Verified Lexical Analysis
- NIPKOW
- 1998
(Show Context)
Citation Context ...xs = (∀ x. eval-pf p (x · xs)) eval-pf (Exist p) xs = (∃ x. eval-pf p (x · xs)) 2.2 Abstract Automata The abstract framework for automata used in this paper is quite similar to the one used by Nipkow =-=[11]-=-. The purpose of this framework is to factor out all properties that deterministic and nondeterministic automata have in common. Automata are characterized by a transition function tr of type σ ⇒ α ⇒ ... |

12 | 2006): Partial recursive functions in higher-order logic
- Krauss
(Show Context)
Citation Context ...nd empt correspond to {x} ∪ S, x ∈ S and ∅ on sets. The node store must also satisfy an additional invariant. Using Isabelle’s infrastructure for the definition of functions by well-founded recursion =-=[9]-=-, the DFS function can be defined as follows 3 : dfs :: β ⇒ α list ⇒ β dfs S [] = S dfs S (x · xs) = (if memb x S then dfs S xs else dfs (ins x S) (succs x @ xs)) Note that this function is partial, s... |

12 | Reflecting BDDs in Coq
- Verma, Goubault-Larrecq, et al.
- 2000
(Show Context)
Citation Context ...numbers. To improve the performance of the decision procedure on large formulae, we would also like to investigate possible optimizations of the simple representation of BDDs presented in §2.3. Verma =-=[14]-=- describes a formalization of reduced ordered BDDs with sharing in Coq. To model sharing, Verma’s formalization is based on a memory for storing BDDs. Due to their dependence on the memory, algorithms... |

11 | Constructively Formalizing Automata Theory
- CONSTABLE, JACKSON, et al.
- 2000
(Show Context)
Citation Context ...e obtained using a naive construction: Exist Exist Eq [5, 3, −1] 0 Forall Imp 13 9 9 6 15 Le [−1] −8 5 The next step is to formalize a minimization algorithm, e.g. along the lines of Constable et al. =-=[6]-=-. We also intend to explore other ways of constructing DFAs for Diophantine equations, such as the approach by Wolper and Boigelot [15], which is more complicated than the one shown in §3.4, but can d... |

6 | Proof Synthesis and Reflection for Linear Arithmetic
- Chaieb, Nipkow
(Show Context)
Citation Context ...community. Chaieb and Nipkow have used this technique to verify various quantifier elimination procedures for dense linear orders, real and integer linear arithmetic, as well as Presburger arithmetic =-=[5, 12]-=-. While the decision procedures by Chaieb and Nipkow are based on algebraic methods like Cooper’s algorithm, there are also semantic methods, as implemented e.g. in the Mona tool [8] for deciding WS1S... |

4 |
quantifier elimination
- Linear
- 2008
(Show Context)
Citation Context ...community. Chaieb and Nipkow have used this technique to verify various quantifier elimination procedures for dense linear orders, real and integer linear arithmetic, as well as Presburger arithmetic =-=[5, 12]-=-. While the decision procedures by Chaieb and Nipkow are based on algebraic methods like Cooper’s algorithm, there are also semantic methods, as implemented e.g. in the Mona tool [8] for deciding WS1S... |

2 | Verified decision procedures on context-free grammars
- Minamide
- 2007
(Show Context)
Citation Context ... is based on a representation of graphs, as well as a data structure for storing the nodes that have already been visited. Our version of DFS, which generalizes earlier work by Nishihara and Minamide =-=[13, 10]-=-, is designed as an abstract module using the locale mechanism of Isabelle, thus allowing the operations on the graph and the node store to be implemented in different ways depending on the applicatio... |

2 |
Depth first search
- Nishihara, Minamide
- 2004
(Show Context)
Citation Context ... is based on a representation of graphs, as well as a data structure for storing the nodes that have already been visited. Our version of DFS, which generalizes earlier work by Nishihara and Minamide =-=[13, 10]-=-, is designed as an abstract module using the locale mechanism of Isabelle, thus allowing the operations on the graph and the node store to be implemented in different ways depending on the applicatio... |