Uniform Inductive Reasoning in Transitive Closure Logic via Infinite Descent Computer Science Logic 1 Dept of Computer Science, Cornell University, Ithaca, NY, USA 2 School of Computing, University of Kent, Canterbury, UK Liron Cohen 1 Reuben N. S. Rowe 2 Wednesday 5 th September 2018, Birmingham, UK
• This global trace condition is an Non-well-founded Proofs: Syntactic Principles 6 • i.e. decidable using Büchi automata -regular property • Each infinite path must admit some infinite descent • At certain points, there is a notion of ‘progression’ through judgements • We trace syntactic elements 5 (Axiom) (Axiom) (Axiom) . (Inference) 1 . . . . . . . . . . . . • • • • . . . . . . . . • • • · · · •
Non-well-founded Proofs: Syntactic Principles . • i.e. decidable using Büchi automata -regular property • This global trace condition is an • Each infinite path must admit some infinite descent • At certain points, there is a notion of ‘progression’ through judgements • We trace syntactic elements (Axiom) (Axiom) (Axiom) . (Inference) 1 . . . . . . . . . . . ∞ • • . . . . . . . . ∞ • • • · · · •
• This global trace condition is an Non-well-founded Proofs: Syntactic Principles . • i.e. decidable using Büchi automata -regular property • Each infinite path must admit some infinite descent • At certain points, there is a notion of ‘progression’ (Axiom) (Axiom) (Axiom) . . (Inference) . . . . . . . . . 1 . ∞ • • . . . . . . . . ∞ • τ 3 τ 2 · · · τ 1 • We trace syntactic elements τ through judgements
• This global trace condition is an Non-well-founded Proofs: Syntactic Principles . • i.e. decidable using Büchi automata -regular property • Each infinite path must admit some infinite descent • At certain points, there is a notion of ‘progression’ (Axiom) (Axiom) (Axiom) . . (Inference) . . . . . . . . . 1 . ∞ • • . . . . . . . . ∞ • τ 3 τ 2 · · · τ 1 • We trace syntactic elements τ through judgements
Non-well-founded Proofs: Syntactic Principles . • i.e. decidable using Büchi automata -regular property • This global trace condition is an • Each infinite path must admit some infinite descent • At certain points, there is a notion of ‘progression’ (Axiom) (Axiom) (Axiom) . . (Inference) . . . . . . . . . 1 . ∞ • • . . . . . . . . ∞ • τ 3 τ 2 · · · τ 1 • We trace syntactic elements τ through judgements
Non-well-founded Proofs: Syntactic Principles . • i.e. decidable using Büchi automata • Each infinite path must admit some infinite descent • At certain points, there is a notion of ‘progression’ (Axiom) (Axiom) (Axiom) . . . (Inference) . . . . . . . . . 1 τ 5 • τ 4 . . . . . . . . τ 6 τ 3 • τ 2 · · · τ 1 • We trace syntactic elements τ through judgements • This global trace condition is an ω -regular property
counter-models M 1 M 2 M 3 M 1 J 1 M 2 J 2 M 3 J 3 3 for progression points M 2 J 2 M 3 J 3 Non-well-founded Proofs: Soundness via Infinite Descent • Assume for contradiction that the conclusion is invalid • Local soundness • We demonstrate a mapping into well-founded D s.t. • 2 1 . 3 • 2 • Global trace condition infinitely descending chain in D ! (Axiom) M 1 2 . . . . . . . . M 3 . . . . (Inference) M 2 ∞ • . . . . . . . . ∞ • • J 3 [ τ 3 ] J 2 [ τ 2 ] · · · J 1 [ τ 1 ]
counter-models M 1 M 2 M 3 M 1 J 1 M 2 J 2 M 3 J 3 3 for progression points M 2 J 2 M 3 J 3 Non-well-founded Proofs: Soundness via Infinite Descent • Assume for contradiction that the conclusion is invalid • Local soundness • We demonstrate a mapping into well-founded D s.t. • 2 1 . 3 • 2 • Global trace condition infinitely descending chain in D ! (Axiom) 2 . . . . . . . M 3 . . . . (Inference) M 2 . ∞ • . . . . . . . . ∞ • • J 3 [ τ 3 ] J 2 [ τ 2 ] · · · M 1 ⊭ J 1 [ τ 1 ]
M 1 J 1 M 2 J 2 M 3 J 3 3 for progression points M 2 J 2 M 3 J 3 • Assume for contradiction that the conclusion is invalid • We demonstrate a mapping into well-founded D s.t. • 1 Non-well-founded Proofs: Soundness via Infinite Descent 2 . 3 • 2 • Global trace condition infinitely descending chain in D ! (Axiom) 2 . . . . . . . . . . (Inference) . . ∞ • . . . . . . . . ∞ • • M 3 ⊭ J 3 [ τ 3 ] M 2 ⊭ J 2 [ τ 2 ] · · · M 1 ⊭ J 1 [ τ 1 ] • Local soundness ⇒ counter-models M 1 , M 2 , M 3 , . . .
3 for progression points M 2 J 2 M 3 J 3 Non-well-founded Proofs: Soundness via Infinite Descent . infinitely descending chain in D ! • Global trace condition 2 • • Assume for contradiction that the conclusion is invalid (Axiom) . (Inference) 2 . . . . . . . . . . . ∞ • . . . . . . . . ∞ • • M 3 ⊭ J 3 [ τ 3 ] M 2 ⊭ J 2 [ τ 2 ] · · · M 1 ⊭ J 1 [ τ 1 ] • Local soundness ⇒ counter-models M 1 , M 2 , M 3 , . . . • We demonstrate a mapping into well-founded ( D , < ) s.t. • � M 1 � J 1 [ τ 1 ] ≤ � M 2 � J 2 [ τ 2 ] ≤ � M 3 � J 3 [ τ 3 ] ≤ . . .
Non-well-founded Proofs: Soundness via Infinite Descent . infinitely descending chain in D ! • Global trace condition • Assume for contradiction that the conclusion is invalid (Axiom) . . . . (Inference) . . . . . 2 . . . ∞ • . . . . . . . . ∞ • • M 3 ⊭ J 3 [ τ 3 ] M 2 ⊭ J 2 [ τ 2 ] · · · M 1 ⊭ J 1 [ τ 1 ] • Local soundness ⇒ counter-models M 1 , M 2 , M 3 , . . . • We demonstrate a mapping into well-founded ( D , < ) s.t. • � M 1 � J 1 [ τ 1 ] ≤ � M 2 � J 2 [ τ 2 ] ≤ � M 3 � J 3 [ τ 3 ] ≤ . . . • � M 2 � J 2 [ τ 2 ] < � M 3 � J 3 [ τ 3 ] for progression points
Non-well-founded Proofs: Soundness via Infinite Descent . • Assume for contradiction that the conclusion is invalid (Axiom) (Inference) . . . . . 2 . . . . . . . ∞ • . . . . . . . . ∞ • • M 3 ⊭ J 3 [ τ 3 ] M 2 ⊭ J 2 [ τ 2 ] · · · M 1 ⊭ J 1 [ τ 1 ] • Local soundness ⇒ counter-models M 1 , M 2 , M 3 , . . . • We demonstrate a mapping into well-founded ( D , < ) s.t. • � M 1 � J 1 [ τ 1 ] ≤ � M 2 � J 2 [ τ 2 ] ≤ � M 3 � J 3 [ τ 3 ] ≤ . . . • � M 2 � J 2 [ τ 2 ] < � M 3 � J 3 [ τ 3 ] for progression points • Global trace condition ⇒ infinitely descending chain in D !
Why Study Non-well-founded Proof Theory? Non-well-founded/cyclic proof theory allows to: • Obtain (cut-free) completeness results Kleene Algebra: Das&Pous • Effectively search for proofs of inductive properties • Automatically verify properties of programs [Brotherston, Bornat, Calcagno, Gorogiannis, Peterson, R, Tellez] • Formally study explicit induction vs infinite descent Ind. Defs: Brotherston&Simpson, Berardi&Tatsuta Arithmetic: Simpson, Das 3 µ -calculus: Fortier&Santocanale, Afshari&Leigh, Doumane Et Al. µ -calculus: Santocanale, Sprenger&Dam, Baelde Et Al., Nollet Et Al.
Example: Martin-Löf-style Inductive Predicates in FOL N 0 O s x E x E s x O x E 0 • We give productions for each ‘inductive’ predicate P i N x N s x • We take the smallest interpretation closed under the rules 4 Q 1 ( ⃗ Q n ( ⃗ s 1 ) . . . s n ) ⃗ P i ( t ) � N � = { 0 , s0 , ss0 , . . . , s n 0 , . . . } � E � = { 0 , ss0 , . . . , s 2 n 0 , . . . } = { s0 , . . . , s 2 n + 1 0 , . . . } � O �
s n 0 s 2 n 0 1 0 Example: Martin-Löf-style Inductive Predicates in FOL E 0 s 2 n s0 0 ss0 0 s0 ss0 O s x E x • We give productions for each ‘inductive’ predicate P i O x E s x N s x N x 4 N 0 • We take the smallest interpretation closed under the rules Q 1 ( ⃗ Q n ( ⃗ s 1 ) . . . s n ) ⃗ P i ( t ) � N � 0 = { } � E � 0 = { } � O � 0 = { }
s n 0 s 2 n 0 1 0 Example: Martin-Löf-style Inductive Predicates in FOL E 0 s 2 n s0 ss0 s0 ss0 O s x E x • We give productions for each ‘inductive’ predicate P i O x E s x N s x N x 4 N 0 • We take the smallest interpretation closed under the rules Q 1 ( ⃗ Q n ( ⃗ s 1 ) . . . s n ) ⃗ P i ( t ) � N � 1 = { 0 , } � E � 1 = { 0 , } � O � 1 = { }
s n 0 s 2 n 0 1 0 Example: Martin-Löf-style Inductive Predicates in FOL E 0 s 2 n ss0 ss0 O s x E x • We give productions for each ‘inductive’ predicate P i O x E s x N s x N x 4 N 0 • We take the smallest interpretation closed under the rules Q 1 ( ⃗ Q n ( ⃗ s 1 ) . . . s n ) ⃗ P i ( t ) � N � 2 = { 0 , s0 , } � E � 2 = { 0 , } � O � 2 = { s0 , }
s n 0 s 2 n 0 1 0 Example: Martin-Löf-style Inductive Predicates in FOL N s x s 2 n O s x E x E s x • We give productions for each ‘inductive’ predicate P i E 0 O x N x N 0 4 • We take the smallest interpretation closed under the rules Q 1 ( ⃗ Q n ( ⃗ s 1 ) . . . s n ) ⃗ P i ( t ) � N � 3 = { 0 , s0 , ss0 , } � E � 3 = { 0 , ss0 , } � O � 3 = { s0 , }
Recommend
More recommend