Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Iris
examples
Commits
80ffd297
Commit
80ffd297
authored
Feb 20, 2019
by
Robbert Krebbers
Browse files
Bump Iris.
parent
37145a3b
Pipeline
#14873
passed with stage
in 12 minutes and 34 seconds
Changes
6
Pipelines
2
Hide whitespace changes
Inline
Side-by-side
opam
View file @
80ffd297
...
...
@@ -9,6 +9,6 @@ build: [make "-j%{jobs}%"]
install: [make "install"]
remove: ["rm" "-rf" "%{lib}%/coq/user-contrib/iris_examples"]
depends: [
"coq-iris" { (= "dev.2019-02-
18.1.a1cf5cb9
") | (= "dev") }
"coq-iris" { (= "dev.2019-02-
20.0.8a8c1405
") | (= "dev") }
"coq-autosubst" { = "dev.coq86" }
]
theories/barrier/proof.v
View file @
80ffd297
...
...
@@ -122,7 +122,7 @@ Proof.
as
([
p
I
])
"(% & [Hl Hr] & Hclose)"
;
eauto
.
destruct
p
;
[|
done
].
wp_store
.
iSpecialize
(
"HΦ"
with
"[#]"
)
=>
//.
iFrame
"HΦ"
.
iMod
(
"Hclose"
$!
(
State
High
I
)
(
∅
:
set
token
)
with
"[-]"
)
;
last
done
.
iMod
(
"Hclose"
$!
(
State
High
I
)
(
∅
:
prop
set
token
)
with
"[-]"
)
;
last
done
.
iSplit
;
[
iPureIntro
;
by
eauto
using
signal_step
|].
rewrite
/
barrier_inv
/
ress
/=.
iNext
.
iFrame
"Hl"
.
iDestruct
"Hr"
as
(
Ψ
)
"[Hr Hsp]"
;
iExists
Ψ
;
iFrame
"Hsp"
.
...
...
theories/barrier/protocol.v
View file @
80ffd297
...
...
@@ -19,7 +19,7 @@ Inductive prim_step : relation state :=
|
ChangeI
p
I2
I1
:
prim_step
(
State
p
I1
)
(
State
p
I2
)
|
ChangePhase
I
:
prim_step
(
State
Low
I
)
(
State
High
I
).
Definition
tok
(
s
:
state
)
:
set
token
:
=
Definition
tok
(
s
:
state
)
:
prop
set
token
:
=
{[
t
|
∃
i
,
t
=
Change
i
∧
i
∉
state_I
s
]}
∪
(
if
state_phase
s
is
High
then
{[
Send
]}
else
∅
).
Global
Arguments
tok
!
_
/.
...
...
@@ -27,10 +27,10 @@ Global Arguments tok !_ /.
Canonical
Structure
sts
:
=
sts
.
Sts
prim_step
tok
.
(* The set of states containing some particular i *)
Definition
i_states
(
i
:
gname
)
:
set
state
:
=
{[
s
|
i
∈
state_I
s
]}.
Definition
i_states
(
i
:
gname
)
:
prop
set
state
:
=
{[
s
|
i
∈
state_I
s
]}.
(* The set of low states *)
Definition
low_states
:
set
state
:
=
{[
s
|
state_phase
s
=
Low
]}.
Definition
low_states
:
prop
set
state
:
=
{[
s
|
state_phase
s
=
Low
]}.
Lemma
i_states_closed
i
:
sts
.
closed
(
i_states
i
)
{[
Change
i
]}.
Proof
.
...
...
@@ -77,7 +77,7 @@ Proof.
-
destruct
p
;
set_solver
.
-
apply
elem_of_equiv
=>
/=
-[
j
|]
;
last
set_solver
.
set_unfold
;
rewrite
!(
inj_iff
Change
).
assert
(
Change
j
∈
match
p
with
Low
=>
∅
:
set
token
|
High
=>
{[
Send
]}
end
↔
False
)
assert
(
Change
j
∈
match
p
with
Low
=>
∅
:
prop
set
token
|
High
=>
{[
Send
]}
end
↔
False
)
as
->
by
(
destruct
p
;
set_solver
).
destruct
(
decide
(
i1
=
j
))
as
[->|]
;
first
naive_solver
.
destruct
(
decide
(
i2
=
j
))
as
[->|]
;
first
naive_solver
.
...
...
theories/hocap/cg_bag.v
View file @
80ffd297
...
...
@@ -62,7 +62,7 @@ Section proof.
end
.
Definition
bag_inv
(
γ
b
:
gname
)
(
b
:
loc
)
:
iProp
Σ
:
=
(
∃
ls
:
list
val
,
b
↦
(
val_of_list
ls
)
∗
own
γ
b
((
1
/
2
)%
Qp
,
to_agree
(
of_
list
ls
)))%
I
.
(
∃
ls
:
list
val
,
b
↦
(
val_of_list
ls
)
∗
own
γ
b
((
1
/
2
)%
Qp
,
to_agree
(
lis
t_to_se
t
ls
)))%
I
.
Definition
is_bag
(
γ
b
:
gname
)
(
x
:
val
)
:
=
(
∃
(
lk
:
val
)
(
b
:
loc
)
(
γ
:
gname
),
...
...
theories/hocap/fg_bag.v
View file @
80ffd297
...
...
@@ -91,7 +91,7 @@ Section proof.
Definition
bag_inv
(
γ
b
:
gname
)
(
b
:
loc
)
:
iProp
Σ
:
=
(
∃
(
hd
:
val
)
(
ls
:
list
val
),
b
↦
hd
∗
is_list
hd
ls
∗
own
γ
b
((
1
/
2
)%
Qp
,
to_agree
(
of_
list
ls
)))%
I
.
b
↦
hd
∗
is_list
hd
ls
∗
own
γ
b
((
1
/
2
)%
Qp
,
to_agree
(
lis
t_to_se
t
ls
)))%
I
.
Definition
is_bag
(
γ
b
:
gname
)
(
x
:
val
)
:
=
(
∃
(
b
:
loc
),
⌜
x
=
#
b
⌝
∗
inv
N
(
bag_inv
γ
b
b
))%
I
.
Definition
bag_contents
(
γ
b
:
gname
)
(
X
:
gmultiset
val
)
:
iProp
Σ
:
=
...
...
theories/spanning_tree/graph.v
View file @
80ffd297
...
...
@@ -57,7 +57,7 @@ Section Graphs.
z
∈
t
→
connected
g
z
→
front
g
t
t
→
t
=
dom
(
gset
_
)
g
.
Proof
.
intros
Hz
Hc
[
Hsb
Hdt
].
apply
collection
_equiv_spec_L
;
split
;
trivial
.
apply
set
_equiv_spec_L
;
split
;
trivial
.
apply
elem_of_subseteq
=>
x
Hx
.
destruct
(
Hc
x
Hx
)
as
[
p
pv
].
clear
Hc
Hx
;
revert
z
Hz
pv
.
induction
p
=>
z
Hz
pv
.
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment