Internalizing labels in BI logics
Meeting TICAMORE Marseille Pierre Kimmel November 14, 2017
Internalizing labels in BI logics Meeting TICAMORE Marseille Pierre - - PowerPoint PPT Presentation
Internalizing labels in BI logics Meeting TICAMORE Marseille Pierre Kimmel November 14, 2017 Introduction BI logics BI OHearn & Pym, 1999 Resource sharing and separation : , Intuitionistic logic , ,
Meeting TICAMORE Marseille Pierre Kimmel November 14, 2017
BI logics
BI
O’Hearn & Pym, 1999
Resource sharing and separation : ∗, −
∗
Intuitionistic logic
∧,∨,→
BI logics
BI | BBI
O’Hearn & Pym, 1999
Resource sharing and separation : ∗, −
∗
Intuitionistic logic | Classical logic
∧,∨,→
BBI semantics
◮ R set of resources, • composition, e neutral element
֒ → r φ ֒ → resources : knowledge, space, general context...
BBI semantics
◮ R set of resources, • composition, e neutral element
֒ → r φ ֒ → resources : knowledge, space, general context...
◮ r A∗ B iff ∃r1,r2 ∈ R such that r = r1 • r2 and r1 A and r2 B
A B A∗ B
BBI semantics
◮ R set of resources, • composition, e neutral element
֒ → r φ ֒ → resources : knowledge, space, general context...
◮ r A∗ B iff ∃r1,r2 ∈ R such that r = r1 • r2 and r1 A and r2 B
A B A∗ B
◮ r A−
∗ B iff ∀r′ ∈ R, if r′ A then r • r′ B
A A−
∗ B
B
BBI example ((((E ∧ F)∗ G)∧ D)∗ C)∧ A∧ B
A,B D E,F G C
Hybrid logic
Modal logic (especially temporal)
◮ φ : For all states that follow, φ is valid ◮ ♦φ : There exists a state that follow where φ is valid
Hybrid logic
Modal logic (especially temporal)
◮ φ : For all states that follow, φ is valid ◮ ♦φ : There exists a state that follow where φ is valid
֒ → Quantifiers over states, no way to capture a precise state.
Hybrid logic
Modal logic (especially temporal)
◮ φ : For all states that follow, φ is valid ◮ ♦φ : There exists a state that follow where φ is valid
֒ → Quantifiers over states, no way to capture a precise state.
Prior, 1967 / Blackburn, 2006
⇒ Hybrid logic : addition of state labels in the syntax
◮ @s(φ) : φ is valid at state s
Motivations
Why not do the same with BBI ?
Motivations
Why not do the same with BBI ?
֒ → Hybrid Resource Logic : BBI + location operators from Hybrid
Logic
Motivations
Why not do the same with BBI ?
֒ → Hybrid Resource Logic : BBI + location operators from Hybrid
Logic
⇒ Extends expressiveness (similarly to Hybrid Logics)
Motivations
Why not do the same with BBI ?
֒ → Hybrid Resource Logic : BBI + location operators from Hybrid
Logic
⇒ Extends expressiveness (similarly to Hybrid Logics) ⇒ Allows axiomatisation of BBI properties
Contributions
◮ A new logic to reason on sharing and separating resources ◮ Syntax including location operators with resource labels ◮ Weaker semantics than BBI, added properties through axioms ◮ Axioms allow to recapture BBI expressiveness and some variants ◮ Extended expressiveness through location operator ◮ Tableau method without labels (soundness/completeness)
Syntax
Set of propositional symbols : Prop Set of resource symbols or nominals : Nom HRL language is defined by the following grammar : X ::=p ∈ Prop
|⊤ |⊥ |¬X |X ∧ X |X ∨ X |X → X |I |X ∗ X |X − ∗ X |X ∗ − X |i ∈ Nom |@i(X)
Note : differentiation between −
∗ and ∗ − is necessary because composition won’t
always be commutative.
Semantics Definition (Weak resource structure)
A weak resource structure associated to Nom is a triple
◮ e ∈ Nom ; ◮ • : Nom × Nom ⇀ Nom ; ◮ ∼ is an equivalence relation on Nom compatible with •.
Definition (Interpretation)
An interpretation of Prop for R is a function · : Prop → P(Nom) which is monotone on Prop, which means for all p ∈ Prop, for all r,r′ ∈ Nom, if r ∼ r′ and r ∈ p then r′ ∈ p.
Semantics Definition (Model)
A model of HRL is a triple K = (R ,·,K ) where R = (•,e,∼) is a weak resource structure on Nom, · is an interpretation of Prop for R and K ⊆ L × Nom is defined by :
◮ r K p iff r ∈ p ◮ r K φ∧ψ iff r K φ and r K ψ ◮ r K φ∗ψ iff there exist r′,r′′ ∈ Nom such that r′ • r′′ ↓ and
r′ • r′′ ∼ r and r′ K φ and r′′ K ψ
◮ r K φ−
∗ψ iff for all r′ ∈ Nom such that r • r′ ↓ and r′ K φ, we
have r • r′ K ψ
◮ r K φ∗
−ψ iff for all r′ ∈ Nom such that r′ • r ↓ and r′ K φ, we
have r′ • r K ψ
◮ r K i iff r ∼ i ◮ r K @i(φ) iff i K φ
HBBI logic Definition (HBBI logic)
HBBI logic is the fragment of HRL where the following axioms are valid for any i,j,k ∈ Nom :
(BI)n ≡ @i(i ∗I) (BI)c ≡ j ∗ k → k ∗ j (BI)a ≡ j ∗(k ∗ l) → (j ∗ k)∗ l Theorem (Semantic equivalence between HBBI and BBI)
Let φ be a BI formula. If any model of BBI is built on Nom, then BBI φ iff HBBI φ.
Note : in HBBI, A−
∗ B ≡ A∗ − B
Formulae and SS Definition (Labelled formulae, Set of statements)
A labelled formula is a pair (S,Φ) with S ∈ {T,F} and Φ a HRL-formula of the form Φ = @x(φ) where x ∈ Nom et φ ∈ L. We note S @x(φ) a labelled formula (S,@x(φ)). A Set of Statements or SS, noted F is a set of labelled formulae. The alphabet of F , noted A(F ) is the set of nominals appearing in F .
Formulae and SS Definition (Labelled formulae, Set of statements)
A labelled formula is a pair (S,Φ) with S ∈ {T,F} and Φ a HRL-formula of the form Φ = @x(φ) where x ∈ Nom et φ ∈ L. We note S @x(φ) a labelled formula (S,@x(φ)). A Set of Statements or SS, noted F is a set of labelled formulae. The alphabet of F , noted A(F ) is the set of nominals appearing in F .
Sx : φ
BI labelled tableaux HRL unlabelled tableaux
Additive Rules T @x(φ∧ψ)
T∧
T @x(φ), T @x(ψ) F @x(φ∧ψ)
F∧
F @x(φ) | F @x(ψ) T @x(φ∨ψ)
T∨
T @x(φ) | T @x(ψ) F @x(φ∨ψ)
F∨
F @x(φ), F @x(ψ) T @x(φ → ψ)
T →
F @x(φ) | T @x(ψ) F @x(φ → ψ)
F →
T @x(φ), F @x(ψ) T @x(¬φ)
T¬
F @x(φ) F @x(¬φ)
F¬
T @x(φ)
x is a nominal.
Multiplicative Rules
T @x(φ∗ψ)
T∗
T @ci(φ), T @cj(ψ), T @x(ci ∗ cj) F @x(φ∗ψ),T @x(y ∗ z)
F∗
F @y(φ) | F @z(ψ) T @x(φ− ∗ψ),T @z(x ∗ y)
T− ∗
F @y(φ) | T @z(ψ) F @x(φ− ∗ψ)
F− ∗
T @ci(φ), F @cj(ψ), T @cj(x ∗ ci) T @x(φ∗ −ψ),T @z(y ∗ x)
T∗ −
F @y(φ) | T @z(ψ) F @x(φ∗ −ψ)
F∗ −
T @ci(φ), F @cj(ψ), T @cj(ci ∗ x)
x,y,z are nominals and ci,cj are new nominals.
Label Rules S @x(@y(φ))
@
S @y(φ)
ir
T @x(x) T @x(y)
is
T @y(x) S @x(φ),T @x(y)
it
S @y(φ) S @x(φ[y ∗ z])
i+
S @x(φ[y ∗ z/ci]), T @ci(y ∗ z) S @x(φ[y]),T @y(z ∗ t)
i−
S @x(φ[y/z ∗ t]) S @x(φ[y]),T @y(z)
ip
S @x(φ[y/z])
x,y,z,t are nominals and ci is a new nominal.
Closure
A tableau for a formula φ is a tableau for {F @c1(φ)} where c1 is a nominal not appearing in φ.
Definition (Closure)
A SS F is closed if one of the following is verified (for φ ∈ L and x ∈ Nom) :
A SS is opened if it’s not closed A tableau is closed if all its branches (its SS) are closed. A tableau-proof for a formula φ is a closed tableau for φ.
Properties of the method Theorem (Soundness)
If there exists a proof for a HRL-formula φ, then it is valid.
Proof.
Through realisability of branches.
Theorem (Completeness)
Let φ be a HRL-formula. If φ is valid, then there is a proof of φ.
Proof.
Through construction of a Hintikka branch and extraction of counter-model from this saturated branch.
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B)
F @x(φ → ψ)
F →
T @x(φ), F @x(ψ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B)
F @x(φ → ψ)
F →
T @x(φ), F @x(ψ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B)
T @x(φ∧ψ)
T∧
T @x(φ), T @x(ψ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B)
T @x(φ∧ψ)
T∧
T @x(φ), T @x(ψ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B)
S @x(@y(φ))
@
S @y(φ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A)
S @x(@y(φ))
@
S @y(φ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A)
T @x(φ∗ψ)
T∗
T @ci(φ), T @cj(ψ), T @x(ci ∗ cj)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3)
T @x(φ∗ψ)
T∗
T @ci(φ), T @cj(ψ), T @x(ci ∗ cj)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3)
F @x(φ∗ψ),T @x(y ∗ z)
F∗
F @y(φ) | F @z(ψ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B)
F @x(φ∗ψ),T @x(y ∗ z)
F∗
F @y(φ) | F @z(ψ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) ×
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) ×
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) ×
S @x(φ),T @x(y)
it
S @y(φ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) ×
T @x(y)
is
T @y(x)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) T @i(c2) ×
T @x(y)
is
T @y(x)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) T @i(c2) ×
S @x(φ),T @x(y)
it
S @y(φ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) T @i(c2) × T @c2(A)
S @x(φ),T @x(y)
it
S @y(φ)
Tableau example
F @c1(@i(A)∧(i ∗ B) → A∗ B) T @c1(@i(A)∧(i ∗ B)) F @c1(A∗ B) T @c1(@i(A)) T @c1(i ∗ B) T @i(A) T @c2(i) T @c3(B) T @c1(c2 ∗ c3) F @c2(A) F @c3(B) T @i(c2) × T @c2(A) ×
HBBI tableaux
HBBI axioms
(BI)n ≡ @i(i ∗I) (BI)c ≡ j ∗ k → k ∗ j (BI)a ≡ j ∗(k ∗ l) → (j ∗ k)∗ l
HBBI tableaux
HBBI axioms HBBI tableaux rules
(BI)n ≡ @i(i ∗I)
BIn
T @x(x ∗I) (BI)c ≡ j ∗ k → k ∗ j
BIc
T @x(z ∗ y) (BI)a ≡ j ∗(k ∗ l) → (j ∗ k)∗ l T @x(y ∗(z ∗ t))
BIa
T @x((y ∗ z)∗ t)
◮ Soundness is conserved ◮ Completeness have to be studied
Why use HRL ?
Why use HRL ? ⇒ Extended expressiveness
Why use HRL ? ⇒ Extended expressiveness ⇒ Modular logic : addition of axioms
An example of modelling with BBI
An example of modelling with BBI
◮ Set of elementary resources coding for coins :
Res = {e,e1,e2,c50,c20,c10}
An example of modelling with BBI
◮ Set of elementary resources coding for coins :
Res = {e,e1,e2,c50,c20,c10}
◮ Set of resources R, closure of Res by •
An example of modelling with BBI
◮ Set of elementary resources coding for coins :
Res = {e,e1,e2,c50,c20,c10}
◮ Set of resources R, closure of Res by • ◮ Set of propositions coding for objects to buy :
Prop = {Obj(0.30),Obj(1.70),Obj(2)}
An example of modelling with BBI
◮ Set of elementary resources coding for coins :
Res = {e,e1,e2,c50,c20,c10}
◮ Set of resources R, closure of Res by • ◮ Set of propositions coding for objects to buy :
Prop = {Obj(0.30),Obj(1.70),Obj(2)}
◮ Equivalence relation : two resources are equivalent if they
represent the same sum of money. E.G. : e2 ∼ e1 • c50 • c20 • c20 • c10
An example of modelling with BBI
r φ if the sum represented by r allows to perform exactly the
An example of modelling with BBI
r φ if the sum represented by r allows to perform exactly the
Examples :
An example of modelling with BBI
r φ if the sum represented by r allows to perform exactly the
Examples :
An example of modelling with BBI
r φ if the sum represented by r allows to perform exactly the
Examples :
∗ Obj(2)
An example of modelling with BBI
r φ if the sum represented by r allows to perform exactly the
Examples :
∗ Obj(2)
An example of modelling with BBI
r φ if the sum represented by r allows to perform exactly the
Examples :
∗ Obj(2)
More expressiveness with HBBI
We develop the same example with HBBI (so that everything we’ve stated is still valid). The set of nominal is the set of elementary resources (Nom = Res).
More expressiveness with HBBI
We develop the same example with HBBI (so that everything we’ve stated is still valid). The set of nominal is the set of elementary resources (Nom = Res).
◮ Using nominals to state properties of resources and propositions.
More expressiveness with HBBI
We develop the same example with HBBI (so that everything we’ve stated is still valid). The set of nominal is the set of elementary resources (Nom = Res).
◮ Using nominals to state properties of resources and propositions.
e2 (e1 ∗ e1)∧ Obj(2)
More expressiveness with HBBI
We develop the same example with HBBI (so that everything we’ve stated is still valid). The set of nominal is the set of elementary resources (Nom = Res).
◮ Using nominals to state properties of resources and propositions.
e2 (e1 ∗ e1)∧ Obj(2)
◮ Using extra nominals as variables (capturing money return).
More expressiveness with HBBI
We develop the same example with HBBI (so that everything we’ve stated is still valid). The set of nominal is the set of elementary resources (Nom = Res).
◮ Using nominals to state properties of resources and propositions.
e2 (e1 ∗ e1)∧ Obj(2)
◮ Using extra nominals as variables (capturing money return).
e2 (Obj(0.30) ∗ x)∧@x(Obj(1.70))
More expressiveness with HBBI
We develop the same example with HBBI (so that everything we’ve stated is still valid). The set of nominal is the set of elementary resources (Nom = Res).
◮ Using nominals to state properties of resources and propositions.
e2 (e1 ∗ e1)∧ Obj(2)
◮ Using extra nominals as variables (capturing money return).
e2 (Obj(0.30) ∗ x)∧@x(Obj(1.70)) Even further : e2 • e1 (Obj(0.30) ∗ x)∧@x(Obj(1.70) ∗ y)
BBI extensions and restrictions
HRL + (BI)n + (BI)c + (BI)a = HBBI
BBI extensions and restrictions
HRL + (BI)n + (BI)c + (BI)a = HBBI HRL + (BI)n + (BI)a = non commutative HBBI
BBI extensions and restrictions
HRL + (BI)n + (BI)c + (BI)a = HBBI HRL + (BI)n + (BI)a = non commutative HBBI HBBI + (Inv) = HBBI with invertible resources
(Inv) ≡ (i ∗⊤)∧I
BBI extensions and restrictions
HRL + (BI)n + (BI)c + (BI)a = HBBI HRL + (BI)n + (BI)a = non commutative HBBI HBBI + (Inv) = HBBI with invertible resources
(Inv) ≡ (i ∗⊤)∧I ↔
Inv
T @x((y ∗⊤)∧I)
BBI extensions and restrictions
HRL + (BI)n + (BI)c + (BI)a = HBBI HRL + (BI)n + (BI)a = non commutative HBBI HBBI + (Inv) = HBBI with invertible resources
(Inv) ≡ (i ∗⊤)∧I ↔
Inv
T @x((y ∗⊤)∧I)
Note : in (i ∗ x)∧I, x is the invert of i.
Contribution :
◮ A new logic, HRL, weaker than BBI but with internalized labels ◮ A tableau method for HRL (sound and complete) ◮ An extension of HRL, HBBI, that matches exactly BBI
Perspectives :
◮ Extended expressiveness of BI logics ◮ Easy extensions and restrictions to new logics, with tableau
method