Sub-classical Boolean bunched logics and the meaning of par
James Brotherston (1) and Jules Villard (2)
(1) University College London (2) Imperial College London /Facebook
CSL, TU Berlin, Sept 2015
1/ 15
Sub-classical Boolean bunched logics and the meaning of par James - - PowerPoint PPT Presentation
Sub-classical Boolean bunched logics and the meaning of par James Brotherston (1) and Jules Villard (2) (1) University College London (2) Imperial College London /Facebook CSL, TU Berlin, Sept 2015 1/ 15 Bunched logics Bunched logics
James Brotherston (1) and Jules Villard (2)
(1) University College London (2) Imperial College London /Facebook
CSL, TU Berlin, Sept 2015
1/ 15
various multiplicative connectives.
2/ 15
various multiplicative connectives.
“resources”) in an underlying model.
2/ 15
various multiplicative connectives.
“resources”) in an underlying model.
2/ 15
various multiplicative connectives.
“resources”) in an underlying model.
also be seen as (special) modal logics.
2/ 15
Provability in the bunched logic BBI is given by extending classical logic by A ∗ B ⊢ B ∗ A A ∗ (B ∗ C) ⊢ (A ∗ B) ∗ C A ⊢ A ∗ ⊤∗ A ∗ ⊤∗ ⊢ A A1 ⊢ B1 A2 ⊢ B2 A1 ∗ A2 ⊢ B1 ∗ B2 A ∗ B ⊢ C A ⊢ B — ∗ C A ⊢ B — ∗ C A ∗ B ⊢ C (i.e., multiplicative intuitionistic linear logic.)
3/ 15
A BBI-model is given by W, ◦, E, where
4/ 15
A BBI-model is given by W, ◦, E, where
extend ◦ pointwise to sets), and
4/ 15
A BBI-model is given by W, ◦, E, where
extend ◦ pointwise to sets), and
4/ 15
A BBI-model is given by W, ◦, E, where
extend ◦ pointwise to sets), and
Separation logic is based on heap models, e.g. H, ◦, {e}, where
4/ 15
A BBI-model is given by W, ◦, E, where
extend ◦ pointwise to sets), and
Separation logic is based on heap models, e.g. H, ◦, {e}, where
4/ 15
A BBI-model is given by W, ◦, E, where
extend ◦ pointwise to sets), and
Separation logic is based on heap models, e.g. H, ◦, {e}, where
4/ 15
A BBI-model is given by W, ◦, E, where
extend ◦ pointwise to sets), and
Separation logic is based on heap models, e.g. H, ◦, {e}, where
4/ 15
Semantics of formula A w.r.t. BBI-model M = W, ◦, E, valuation ρ, and w ∈ W given by forcing relation w | =ρ A:
5/ 15
Semantics of formula A w.r.t. BBI-model M = W, ◦, E, valuation ρ, and w ∈ W given by forcing relation w | =ρ A:
w | =ρ P ⇔ w ∈ ρ(P)
5/ 15
Semantics of formula A w.r.t. BBI-model M = W, ◦, E, valuation ρ, and w ∈ W given by forcing relation w | =ρ A:
w | =ρ P ⇔ w ∈ ρ(P) . . . w | =ρ ⊤∗ ⇔ w ∈ E
5/ 15
Semantics of formula A w.r.t. BBI-model M = W, ◦, E, valuation ρ, and w ∈ W given by forcing relation w | =ρ A:
w | =ρ P ⇔ w ∈ ρ(P) . . . w | =ρ ⊤∗ ⇔ w ∈ E w | =ρ A1 ∗ A2 ⇔ w ∈ w1 ◦ w2 and w1 | =ρ A1 and w2 | =ρ A2
5/ 15
Semantics of formula A w.r.t. BBI-model M = W, ◦, E, valuation ρ, and w ∈ W given by forcing relation w | =ρ A:
w | =ρ P ⇔ w ∈ ρ(P) . . . w | =ρ ⊤∗ ⇔ w ∈ E w | =ρ A1 ∗ A2 ⇔ w ∈ w1 ◦ w2 and w1 | =ρ A1 and w2 | =ρ A2 w | =ρ A1 — ∗ A2 ⇔ ∀w′, w′′ ∈ W. if w′′ ∈ w ◦ w′ and w′ | =ρ A1 then w′′ | =ρ A2
5/ 15
Semantics of formula A w.r.t. BBI-model M = W, ◦, E, valuation ρ, and w ∈ W given by forcing relation w | =ρ A:
w | =ρ P ⇔ w ∈ ρ(P) . . . w | =ρ ⊤∗ ⇔ w ∈ E w | =ρ A1 ∗ A2 ⇔ w ∈ w1 ◦ w2 and w1 | =ρ A1 and w2 | =ρ A2 w | =ρ A1 — ∗ A2 ⇔ ∀w′, w′′ ∈ W. if w′′ ∈ w ◦ w′ and w′ | =ρ A1 then w′′ | =ρ A2 A is valid in M iff w | =ρ A for all ρ and w ∈ W.
5/ 15
Semantics of formula A w.r.t. BBI-model M = W, ◦, E, valuation ρ, and w ∈ W given by forcing relation w | =ρ A:
w | =ρ P ⇔ w ∈ ρ(P) . . . w | =ρ ⊤∗ ⇔ w ∈ E w | =ρ A1 ∗ A2 ⇔ w ∈ w1 ◦ w2 and w1 | =ρ A1 and w2 | =ρ A2 w | =ρ A1 — ∗ A2 ⇔ ∀w′, w′′ ∈ W. if w′′ ∈ w ◦ w′ and w′ | =ρ A1 then w′′ | =ρ A2 A is valid in M iff w | =ρ A for all ρ and w ∈ W. Theorem (Galmiche and Larchey-Wendling, 2006) A formula is BBI-provable iff it is valid in all BBI-models.
5/ 15
conjunction (with — ∗ its adjoint implication).
6/ 15
conjunction (with — ∗ its adjoint implication).
6/ 15
conjunction (with — ∗ its adjoint implication).
6/ 15
conjunction (with — ∗ its adjoint implication).
6/ 15
conjunction (with — ∗ its adjoint implication).
6/ 15
multiplicative linear logic.
7/ 15
multiplicative linear logic.
BBI-model, and U ⊆ W satisfies:
7/ 15
multiplicative linear logic.
BBI-model, and U ⊆ W satisfies: ∀w ∈ W. ∃ unique −w ∈ W. (w ◦ −w) ∩ U = ∅
7/ 15
multiplicative linear logic.
BBI-model, and U ⊆ W satisfies: ∀w ∈ W. ∃ unique −w ∈ W. (w ◦ −w) ∩ U = ∅
include Abelian groups, bit arrays, regular languages, etc.
7/ 15
multiplicative linear logic.
BBI-model, and U ⊆ W satisfies: ∀w ∈ W. ∃ unique −w ∈ W. (w ◦ −w) ∩ U = ∅
include Abelian groups, bit arrays, regular languages, etc.
= ∼A ⇔ −w | = A.
7/ 15
multiplicative linear logic.
BBI-model, and U ⊆ W satisfies: ∀w ∈ W. ∃ unique −w ∈ W. (w ◦ −w) ∩ U = ∅
include Abelian groups, bit arrays, regular languages, etc.
= ∼A ⇔ −w | = A.
∨ B =def ∼(∼A ∗ ∼B).
7/ 15
because worlds in those models don’t have natural duals.
8/ 15
because worlds in those models don’t have natural duals.
8/ 15
because worlds in those models don’t have natural duals.
H, ◦, {e}, U is a CBI-model.
8/ 15
We add multiplicative disjunction ∗ ∨, coimplication
∗
\ and (maybe) falsum ⊥
∗ to BBI via the following rules:
9/ 15
We add multiplicative disjunction ∗ ∨, coimplication
∗
\ and (maybe) falsum ⊥
∗ to BBI via the following rules:
Monotonicity: Residuation: Commutativity: A1 ⊢ B1 A2 ⊢ B2 A1
∗
∨ A2 ⊢ B1
∗
∨ B2 A ⊢ B ∗ ∨ C = = = = = = = = = A
∗
\ B ⊢ C A ∗ ∨ B ⊢ B ∗ ∨ A (Other principles are considered optional!)
9/ 15
A basic BiBBI-model is given by W, ◦, E, ▽, U, where
10/ 15
A basic BiBBI-model is given by W, ◦, E, ▽, U, where
10/ 15
A basic BiBBI-model is given by W, ◦, E, ▽, U, where
10/ 15
A basic BiBBI-model is given by W, ◦, E, ▽, U, where
Forcing relation for new connectives: w | =ρ A ∗ ∨ B ⇔ ∀w1, w2 ∈ W. w ∈ w1 ▽ w2 implies w1 | =ρ A or w2 | =ρ B
10/ 15
A basic BiBBI-model is given by W, ◦, E, ▽, U, where
Forcing relation for new connectives: w | =ρ A ∗ ∨ B ⇔ ∀w1, w2 ∈ W. w ∈ w1 ▽ w2 implies w1 | =ρ A or w2 | =ρ B w | =ρ A
∗
\ B ⇔ w′′ ∈ w′ ▽ w and w′′ | =ρ A and w′ | =ρ B
10/ 15
A basic BiBBI-model is given by W, ◦, E, ▽, U, where
Forcing relation for new connectives: w | =ρ A ∗ ∨ B ⇔ ∀w1, w2 ∈ W. w ∈ w1 ▽ w2 implies w1 | =ρ A or w2 | =ρ B w | =ρ A
∗
\ B ⇔ w′′ ∈ w′ ▽ w and w′′ | =ρ A and w′ | =ρ B w | =ρ ⊥
∗
⇔ w ∈ U This is compatible with CBI interpretation of these connectives.
10/ 15
Principle Axiom Model condition Associativity A ∗ ∨ (B ∗ ∨ C) ⊢ (A ∗ ∨ B) ∗ ∨ C w1 ▽ (w2 ▽ w3) = (w1 ▽ w2) ▽ w3 Unit expansion A ⊢ A ∗ ∨ ⊥
∗
w ▽ U ⊆ {w} Unit contraction A ∗ ∨ ⊥
∗ ⊢ A
w ∈ w ▽ U Contraction A ∗ ∨ A ⊢ A w ∈ w ▽ w Weak distribution A ∗ (B ∗ ∨ C) ⊢ (A ∗ B) ∗ ∨ C (x1 ◦ x2) ∩ (y1 ▽ y2) = ∅ implies ∃w. y1 ∈ x1 ◦ w and x2 ∈ w ▽ y2 Classicality ∼∼A ⊢ A ∃!−w. (w ◦ −w) ∩ U = ∅
Theorem Each axiom defines the corresponding model condition.
11/ 15
For any collection A of axioms from our table, we have:
12/ 15
For any collection A of axioms from our table, we have: Theorem A BiBBI-formula is provable in BiBBI + A iff it is valid in the corresponding subclass of basic BiBBI-models.
12/ 15
For any collection A of axioms from our table, we have: Theorem A BiBBI-formula is provable in BiBBI + A iff it is valid in the corresponding subclass of basic BiBBI-models. (Completeness is by embedding BiBBI + A into a Sahlqvist fragment of modal logic.)
12/ 15
For any collection A of axioms from our table, we have: Theorem A BiBBI-formula is provable in BiBBI + A iff it is valid in the corresponding subclass of basic BiBBI-models. (Completeness is by embedding BiBBI + A into a Sahlqvist fragment of modal logic.) Theorem There is a display calculus proof system for BiBBI + A that is both complete and cut-eliminating.
12/ 15
weak distribution: A ∗ (B ∗ ∨ C) ⊢ (A ∗ B) ∗ ∨ C which is a consequence of De Morgan equivalences (so holds in CBI), but not vice versa
13/ 15
weak distribution: A ∗ (B ∗ ∨ C) ⊢ (A ∗ B) ∗ ∨ C which is a consequence of De Morgan equivalences (so holds in CBI), but not vice versa
(x1 ◦ x2) ∩ (y1 ▽ y2) = ∅ implies ∃w. y1 ∈ x1 ◦ w and x2 ∈ w ▽ y2
13/ 15
weak distribution: A ∗ (B ∗ ∨ C) ⊢ (A ∗ B) ∗ ∨ C which is a consequence of De Morgan equivalences (so holds in CBI), but not vice versa
(x1 ◦ x2) ∩ (y1 ▽ y2) = ∅ implies ∃w. y1 ∈ x1 ◦ w and x2 ∈ w ▽ y2
∗ is a unit for ∗
∨, we obtain the disjunctive syllogism: A ∗ (∼A ∗ ∨ B) ⊢ B.
13/ 15
In the heap model, we can obtain a weak-distributive ▽ via at least two kinds of heap intersection:
14/ 15
In the heap model, we can obtain a weak-distributive ▽ via at least two kinds of heap intersection: Definition Define h ▽ h′ to be the intersection of (partial functions) h and h′ if h(ℓ) = h′(ℓ) for all ℓ ∈ dom(h) ∩ dom(h′), and undefined
14/ 15
In the heap model, we can obtain a weak-distributive ▽ via at least two kinds of heap intersection: Definition Define h ▽ h′ to be the intersection of (partial functions) h and h′ if h(ℓ) = h′(ℓ) for all ℓ ∈ dom(h) ∩ dom(h′), and undefined
Definition Define h ▽ h′ to be the intersection of h and h′ only where h(ℓ) = h′(ℓ).
14/ 15
In the heap model, we can obtain a weak-distributive ▽ via at least two kinds of heap intersection: Definition Define h ▽ h′ to be the intersection of (partial functions) h and h′ if h(ℓ) = h′(ℓ) for all ℓ ∈ dom(h) ∩ dom(h′), and undefined
Definition Define h ▽ h′ to be the intersection of h and h′ only where h(ℓ) = h′(ℓ). The second is associative, but not the first. Neither intersection has a unit!
14/ 15
15/ 15
15/ 15
15/ 15
∨,
∗
\ etc., in program analysis?
15/ 15
∨,
∗
\ etc., in program analysis?
15/ 15