Uniform Inductive Reasoning in Transitive Closure Logic via Infinite Descent SREPLS 10, Birkbeck, University of London 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 Tuesday 18 th September 2018
Motivation • Carry out formal inductive reasoning • Do so automatically (as much as possible) • Study/compare different ‘styles’ of inductive reasoning 1
Formalising Inductive Reasoning
Explicit Inductive Definitions • We take the smallest interpretation closed under the rules O s x E x E s x O x E 0 N s x N x • Use clauses to inductively define predicates: N 0 . . . 2 ⃗ ϕ 1 ∧ . . . ∧ ϕ n ⇒ P ( t ) ⃗ ψ 1 ∧ . . . ∧ ψ m ⇒ P ( t ) � N � = { 0 , s0 , ss0 , . . . , s n 0 , . . . } � E � = { 0 , ss0 , . . . , s 2 n 0 , . . . } � O � = { s0 , . . . , s 2 n + 1 0 , . . . }
Reasoning Using Explicit Induction Principles • We reason using the corresponding induction principles • E.g. the productions for N give 3 ⃗ Γ ⊢ IND Q ( F ) ( ∀ Q mutually recursive with P ) Γ , F ( t ) ⊢ ∆ Γ , P ⃗ t ⊢ ∆ Γ ⊢ F ( 0 ) Γ , F ( x ) ⊢ F ( s x ) Γ , F ( t ) ⊢ ∆ Γ , N t ⊢ ∆
• At certain points, these progress (i.e. get ‘smaller’) • Each infinite path must admit some infinite descent Non-well-founded Proofs: Reasoning by Infinite Descent P t • i.e. decidable using Büchi automata -regular property • This global trace condition is an • We trace predicate instances through the proof Q u (Axiom) (Axiom) (Axiom) . (Inference) 4 . . . . . . . . . . . . • • • • . . . . . . . . • • • · · · •
• At certain points, these progress (i.e. get ‘smaller’) Non-well-founded Proofs: Reasoning by Infinite Descent . • i.e. decidable using Büchi automata -regular property • This global trace condition is an • Each infinite path must admit some infinite descent • We trace predicate instances through the proof (Axiom) (Axiom) (Axiom) . . (Inference) . . . . . . . . . 4 . ∞ • • . . . . . . . . ∞ • • • · · · •
Non-well-founded Proofs: Reasoning by Infinite Descent . • 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, these progress (i.e. get ‘smaller’) • We trace predicate instances through the proof (Axiom) (Axiom) (Axiom) . (Inference) . 4 . . . . . . . . . . ∞ s ) . . . . . . . . ∞ • • Q ( ⃗ R ( ⃗ u ) P ( ⃗ r ) · · · ⃗ P ( t )
• Each infinite path must admit some infinite descent Non-well-founded Proofs: Reasoning by Infinite Descent . • i.e. decidable using Büchi automata -regular property • This global trace condition is an • We trace predicate instances through the proof (Axiom) (Axiom) (Axiom) . (Inference) . 4 . . . . . . . . . . ∞ s ) . . . . . . . . ∞ • • Q ( ⃗ R ( ⃗ u ) P ( ⃗ r ) · · · ⃗ P ( t ) • At certain points, these progress (i.e. get ‘smaller’)
Non-well-founded Proofs: Reasoning by Infinite Descent . • i.e. decidable using Büchi automata -regular property • This global trace condition is an • Each infinite path must admit some infinite descent • We trace predicate instances through the proof (Axiom) (Axiom) (Axiom) . (Inference) . 4 . . . . . . . . . . ∞ s ) . . . . . . . . ∞ • • Q ( ⃗ R ( ⃗ u ) P ( ⃗ r ) · · · ⃗ P ( t ) • At certain points, these progress (i.e. get ‘smaller’)
Non-well-founded Proofs: Reasoning by Infinite Descent . • i.e. decidable using Büchi automata • Each infinite path must admit some infinite descent • We trace predicate instances through the proof (Axiom) (Axiom) (Axiom) . . . . (Inference) . . . . . . . 4 . Q ( ⃗ u ) ⃗ s ) . . . . . . . . P ( t ) • • Q ( ⃗ R ( ⃗ u ) P ( ⃗ r ) · · · ⃗ P ( t ) • At certain points, these progress (i.e. get ‘smaller’) • This global trace condition is an ω -regular property
An Example Cyclic Proof (Subst) (Case E) (N R 2 ) (Case O) (N R 2 ) (N R 1 ) 5 E x ⊢ N x E z ⊢ N z E z ⊢ N s z ⇒ N 0 ( = L) y = s z , E z ⊢ N y N x ⇒ N s x ⇒ E 0 O y ⊢ N y O x ⇒ E s x ⊢ N 0 O y ⊢ N s y E x ⇒ O s x ( = L) ( = L) x = 0 ⊢ N x x = s y , O y ⊢ N x E x ⊢ N x
An Example Cyclic Proof (Subst) Left unfolding rule (Case E) (N R 2 ) (Case O) (N R 2 ) 5 (N R 1 ) E x ⊢ N x E z ⊢ N z E z ⊢ N s z ⇒ N 0 ( = L) y = s z , E z ⊢ N y N x ⇒ N s x ⇒ E 0 O y ⊢ N y O x ⇒ E s x ⊢ N 0 O y ⊢ N s y E x ⇒ O s x ( = L) ( = L) x = 0 ⊢ N x x = s y , O y ⊢ N x E x ⊢ N x
An Example Cyclic Proof (Subst) Left unfolding rule (Case E) (N R 2 ) (Case O) (N R 2 ) 5 (N R 1 ) E x ⊢ N x E z ⊢ N z E z ⊢ N s z ⇒ N 0 ( = L) y = s z , E z ⊢ N y N x ⇒ N s x ⇒ E 0 O y ⊢ N y O x ⇒ E s x ⊢ N 0 O y ⊢ N s y E x ⇒ O s x ( = L) ( = L) x = 0 ⊢ N x x = s y , O y ⊢ N x E x ⊢ N x
An Example Cyclic Proof (Subst) Right unfolding rule (Case E) (N R 2 ) (Case O) (N R 2 ) 5 (N R 1 ) E x ⊢ N x E z ⊢ N z E z ⊢ N s z ⇒ N 0 ( = L) y = s z , E z ⊢ N y N x ⇒ N s x ⇒ E 0 O y ⊢ N y O x ⇒ E s x ⊢ N 0 O y ⊢ N s y E x ⇒ O s x ( = L) ( = L) x = 0 ⊢ N x x = s y , O y ⊢ N x E x ⊢ N x
An Example Cyclic Proof (Subst) Right unfolding rule (Case E) (N R 2 ) (Case O) (N R 2 ) 5 (N R 1 ) E x ⊢ N x E z ⊢ N z E z ⊢ N s z ⇒ N 0 ( = L) y = s z , E z ⊢ N y N x ⇒ N s x ⇒ E 0 O y ⊢ N y O x ⇒ E s x ⊢ N 0 O y ⊢ N s y E x ⇒ O s x ( = L) ( = L) x = 0 ⊢ N x x = s y , O y ⊢ N x E x ⊢ N x
An Example Cyclic Proof (Subst) Right unfolding rule (Case E) (N R 2 ) (Case O) (N R 2 ) 5 (N R 1 ) E x ⊢ N x E z ⊢ N z E z ⊢ N s z ⇒ N 0 ( = L) y = s z , E z ⊢ N y N x ⇒ N s x ⇒ E 0 O y ⊢ N y O x ⇒ E s x ⊢ N 0 O y ⊢ N s y E x ⇒ O s x ( = L) ( = L) x = 0 ⊢ N x x = s y , O y ⊢ N x E x ⊢ N x
An Example Cyclic Proof (Subst) (Case E) (N R 2 ) (Case O) (N R 2 ) (N R 1 ) 5 E x ⊢ N x E z ⊢ N z E z ⊢ N s z ⇒ N 0 ( = L) y = s z , E z ⊢ N y N x ⇒ N s x ⇒ E 0 O y ⊢ N y O x ⇒ E s x ⊢ N 0 O y ⊢ N s y E x ⇒ O s x ( = L) ( = L) x = 0 ⊢ N x x = s y , O y ⊢ N x E x ⊢ N x
Comparing the Two Approaches For FOL with Martin-Löf style inductive definitions: [Brotherston & Simpson, 2007] • Infinitary system sound/complete for standard semantics • Cyclic system subsumes explicit induction • Equivalent under arithmetic • Not equivalent in general (2-Hydra counterexample) [Berardi & Tatsuta, 2017] • Explicit induction sound/complete for Henkin semantics 6
Comparing the Two Approaches For FOL with Martin-Löf style inductive definitions: [Brotherston & Simpson, 2007] • Infinitary system sound/complete for standard semantics • Cyclic system subsumes explicit induction • Equivalent under arithmetic • Not equivalent in general (2-Hydra counterexample) [Berardi & Tatsuta, 2017] • Explicit induction sound/complete for Henkin semantics 6
Comparing the Two Approaches For FOL with Martin-Löf style inductive definitions: [Brotherston & Simpson, 2007] • Infinitary system sound/complete for standard semantics • Cyclic system subsumes explicit induction • Equivalent under arithmetic • Not equivalent in general (2-Hydra counterexample) [Berardi & Tatsuta, 2017] • Explicit induction sound/complete for Henkin semantics 6
Transitive Closure Logic
Transitive Closure Logic Transitive Closure ( TC ) Logic extends FOL with formulas: • s and t are terms 7 • ( RTC x , y ϕ )( s , t ) • ϕ is a formula • x and y are distinct variables (which become bound in ϕ ) whose intended meaning is an infinite disjunction s = t ∨ ϕ [ s / x , t / y ] ∨ ( ∃ w 1 . ϕ [ s / x , w 1 / y ] ∧ ϕ [ w 1 / x , t / y ]) ∨ ( ∃ w 1 , w 2 . ϕ [ s / x , w 1 / y ] ∧ ϕ [ w 1 / x , w 2 / y ] ∧ ϕ [ w 2 / x , t / y ]) ∨ . . .
a i y a i v t v s a n 1 a n a 2 a 1 a 0 n for all i 1 Transitive Closure Logic: Standard Semantics The formal semantics: M v x a n v t a 0 D v s a n a 0 • v is a valuation of terms in M : • M is a (standard) first-order model with domain D 8 M , v | = ( RTC x , y ϕ )( s , t )
a i y Transitive Closure Logic: Standard Semantics v t v s a n a 2 a 1 a 0 n for all i 1 The formal semantics: a i M v x a n v t a 0 v s • v is a valuation of terms in M : • M is a (standard) first-order model with domain D 8 M , v | = ( RTC x , y ϕ )( s , t ) ⇔ ∃ a 0 , . . . , a n ∈ D . . . a n − 1
a i y Transitive Closure Logic: Standard Semantics 1 a n a 2 a 1 a 0 n The formal semantics: for all i a i M v x • v is a valuation of terms in M : • M is a (standard) first-order model with domain D 8 M , v | = ( RTC x , y ϕ )( s , t ) ⇔ ∃ a 0 , . . . , a n ∈ D . v ( s ) = a 0 ∧ v ( t ) = a n . . . v ( s ) v ( t ) a n − 1
Transitive Closure Logic: Standard Semantics a 0 a n a 2 The formal semantics: a 1 • M is a (standard) first-order model with domain D • v is a valuation of terms in M : 8 M , v | = ( RTC x , y ϕ )( s , t ) ⇔ ∃ a 0 , . . . , a n ∈ D . v ( s ) = a 0 ∧ v ( t ) = a n ∧ M , v [ x := a i , y := a i + 1 ] | = ϕ for all i < n φ φ φ φ v ( s ) v ( t ) a n − 1
Recommend
More recommend