Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
G
gpfsl
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Service Desk
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Iris
gpfsl
Commits
25e2a830
Commit
25e2a830
authored
8 months ago
by
Ralf Jung
Browse files
Options
Downloads
Patches
Plain Diff
update dependencies
parent
b2983a1e
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Pipeline
#106814
passed
8 months ago
Stage: build
Changes
3
Pipelines
7
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
coq-gpfsl.opam
+1
-1
1 addition, 1 deletion
coq-gpfsl.opam
coq-orc11.opam
+1
-1
1 addition, 1 deletion
coq-orc11.opam
gpfsl-examples/algebra/mono_list_list.v
+8
-8
8 additions, 8 deletions
gpfsl-examples/algebra/mono_list_list.v
with
10 additions
and
10 deletions
coq-gpfsl.opam
+
1
−
1
View file @
25e2a830
...
@@ -10,7 +10,7 @@ version: "dev"
...
@@ -10,7 +10,7 @@ version: "dev"
synopsis: "A combination of GPS and FSL in the promising semantics WITHOUT promises"
synopsis: "A combination of GPS and FSL in the promising semantics WITHOUT promises"
depends: [
depends: [
"coq-iris" { (= "dev.2024-0
8-30.0.efb542b0
") | (= "dev") }
"coq-iris" { (= "dev.2024-0
9-04.0.0653ba6c
") | (= "dev") }
"coq-orc11" {= version}
"coq-orc11" {= version}
]
]
...
...
This diff is collapsed.
Click to expand it.
coq-orc11.opam
+
1
−
1
View file @
25e2a830
...
@@ -10,7 +10,7 @@ version: "dev"
...
@@ -10,7 +10,7 @@ version: "dev"
synopsis: "A Coq formalization of the ORC11 semantics for weak memory"
synopsis: "A Coq formalization of the ORC11 semantics for weak memory"
depends: [
depends: [
"coq-stdpp" { (= "dev.2024-0
8-30.1.8548ce4
2") | (= "dev") }
"coq-stdpp" { (= "dev.2024-0
9-03.0.6cb5c0f
2") | (= "dev") }
]
]
build: ["./make-package" "orc11" "-j%{jobs}%"]
build: ["./make-package" "orc11" "-j%{jobs}%"]
...
...
This diff is collapsed.
Click to expand it.
gpfsl-examples/algebra/mono_list_list.v
+
8
−
8
View file @
25e2a830
...
@@ -5,8 +5,8 @@ From iris.prelude Require Import options.
...
@@ -5,8 +5,8 @@ From iris.prelude Require Import options.
(* TODO: upstream? *)
(* TODO: upstream? *)
Lemma
map_relation_iff
`{
∀
A
,
Lookup
K
A
(
M
A
)}
{
A
B
}
Lemma
map_relation_iff
`{
∀
A
,
Lookup
K
A
(
M
A
)}
{
A
B
}
(
R1
R2
:
A
→
B
→
Prop
)
(
P1
P2
:
A
→
Prop
)
(
Q1
Q2
:
B
→
Prop
)
(
R1
R2
:
K
→
A
→
B
→
Prop
)
(
P1
P2
:
K
→
A
→
Prop
)
(
Q1
Q2
:
K
→
B
→
Prop
)
(
IffR
:
∀
a
b
,
R1
a
b
↔
R2
a
b
)
(
IffP
:
∀
a
,
P1
a
↔
P2
a
)
(
IffQ
:
∀
b
,
Q1
b
↔
Q2
b
)
(
IffR
:
∀
k
a
b
,
R1
k
a
b
↔
R2
k
a
b
)
(
IffP
:
∀
k
a
,
P1
k
a
↔
P2
k
a
)
(
IffQ
:
∀
k
b
,
Q1
k
b
↔
Q2
k
b
)
(
m1
:
M
A
)
(
m2
:
M
B
)
:
(
m1
:
M
A
)
(
m2
:
M
B
)
:
map_relation
R1
P1
Q1
m1
m2
↔
map_relation
R2
P2
Q2
m1
m2
.
map_relation
R1
P1
Q1
m1
m2
↔
map_relation
R2
P2
Q2
m1
m2
.
Proof
.
Proof
.
...
@@ -23,7 +23,7 @@ Definition to_max_prefix_list_list {A} (l : list (list A)) : max_prefix_list_lis
...
@@ -23,7 +23,7 @@ Definition to_max_prefix_list_list {A} (l : list (list A)) : max_prefix_list_lis
to_max_prefix_list
<$>
map_seq
0
l
.
to_max_prefix_list
<$>
map_seq
0
l
.
Global
Instance
:
Params
(
@
to_max_prefix_list_list
)
1
:=
{}
.
Global
Instance
:
Params
(
@
to_max_prefix_list_list
)
1
:=
{}
.
Definition
prefixes
{
A
}
:
relation
(
list
(
list
A
))
:=
map_included
prefix
.
Definition
prefixes
{
A
}
:
relation
(
list
(
list
A
))
:=
map_included
(
λ
_,
prefix
)
.
Infix
"`prefixes_of`"
:=
prefixes
(
at
level
70
)
:
stdpp_scope
.
Infix
"`prefixes_of`"
:=
prefixes
(
at
level
70
)
:
stdpp_scope
.
...
@@ -106,7 +106,7 @@ Section max_prefix_list_list.
...
@@ -106,7 +106,7 @@ Section max_prefix_list_list.
Local
Lemma
to_max_prefix_list_list_includedN_aux
n
ll1
ll2
:
Local
Lemma
to_max_prefix_list_list_includedN_aux
n
ll1
ll2
:
to_max_prefix_list_list
ll1
≼
{
n
}
to_max_prefix_list_list
ll2
→
to_max_prefix_list_list
ll1
≼
{
n
}
to_max_prefix_list_list
ll2
→
map_included
(
λ
l1
l2
,
l2
≡
{
n
}
≡
l1
++
drop
(
length
l1
)
l2
)
ll1
ll2
.
map_included
(
λ
_
l1
l2
,
l2
≡
{
n
}
≡
l1
++
drop
(
length
l1
)
l2
)
ll1
ll2
.
Proof
.
Proof
.
rewrite
lookup_includedN
=>
H
.
rewrite
lookup_includedN
=>
H
.
rewrite
/
map_included
/
map_relation
=>
i
.
move
:
{
H
}(
H
i
)
.
rewrite
/
map_included
/
map_relation
=>
i
.
move
:
{
H
}(
H
i
)
.
...
@@ -120,7 +120,7 @@ Section max_prefix_list_list.
...
@@ -120,7 +120,7 @@ Section max_prefix_list_list.
Qed
.
Qed
.
Lemma
to_max_prefix_list_list_includedN
n
ll1
ll2
:
Lemma
to_max_prefix_list_list_includedN
n
ll1
ll2
:
to_max_prefix_list_list
ll1
≼
{
n
}
to_max_prefix_list_list
ll2
to_max_prefix_list_list
ll1
≼
{
n
}
to_max_prefix_list_list
ll2
↔
map_included
(
λ
l1
l2
,
∃
l
,
l2
≡
{
n
}
≡
l1
++
l
)
ll1
ll2
.
↔
map_included
(
λ
_
l1
l2
,
∃
l
,
l2
≡
{
n
}
≡
l1
++
l
)
ll1
ll2
.
Proof
.
Proof
.
split
.
split
.
-
intros
H
%
to_max_prefix_list_list_includedN_aux
i
.
move
:
{
H
}(
H
i
)
.
-
intros
H
%
to_max_prefix_list_list_includedN_aux
i
.
move
:
{
H
}(
H
i
)
.
...
@@ -134,7 +134,7 @@ Section max_prefix_list_list.
...
@@ -134,7 +134,7 @@ Section max_prefix_list_list.
Qed
.
Qed
.
Lemma
to_max_prefix_list_list_included
ll1
ll2
:
Lemma
to_max_prefix_list_list_included
ll1
ll2
:
to_max_prefix_list_list
ll1
≼
to_max_prefix_list_list
ll2
to_max_prefix_list_list
ll1
≼
to_max_prefix_list_list
ll2
↔
map_included
(
λ
l1
l2
,
∃
l
,
l2
≡
l1
++
l
)
ll1
ll2
.
↔
map_included
(
λ
_
l1
l2
,
∃
l
,
l2
≡
l1
++
l
)
ll1
ll2
.
Proof
.
Proof
.
split
.
split
.
-
intros
IN
i
.
-
intros
IN
i
.
...
@@ -244,7 +244,7 @@ Section mono_list_list.
...
@@ -244,7 +244,7 @@ Section mono_list_list.
Qed
.
Qed
.
Lemma
mono_list_list_both_validN
n
ll1
ll2
:
Lemma
mono_list_list_both_validN
n
ll1
ll2
:
✓
{
n
}
(
●
MLL
ll1
⋅
◯
MLL
ll2
)
↔
map_included
(
λ
l1
l2
,
∃
l
,
l2
≡
{
n
}
≡
l1
++
l
)
ll2
ll1
.
✓
{
n
}
(
●
MLL
ll1
⋅
◯
MLL
ll2
)
↔
map_included
(
λ
_
l1
l2
,
∃
l
,
l2
≡
{
n
}
≡
l1
++
l
)
ll2
ll1
.
Proof
.
Proof
.
rewrite
/
mono_list_list_auth
/
mono_list_list_lb
-
assoc
rewrite
/
mono_list_list_auth
/
mono_list_list_lb
-
assoc
-
auth_frag_op
auth_both_validN
-
to_max_prefix_list_list_includedN
.
-
auth_frag_op
auth_both_validN
-
to_max_prefix_list_list_includedN
.
...
@@ -258,7 +258,7 @@ Section mono_list_list.
...
@@ -258,7 +258,7 @@ Section mono_list_list.
Qed
.
Qed
.
Lemma
mono_list_list_both_valid
ll1
ll2
:
Lemma
mono_list_list_both_valid
ll1
ll2
:
✓
(
●
MLL
ll1
⋅
◯
MLL
ll2
)
↔
map_included
(
λ
l1
l2
,
∃
l
,
l2
≡
l1
++
l
)
ll2
ll1
.
✓
(
●
MLL
ll1
⋅
◯
MLL
ll2
)
↔
map_included
(
λ
_
l1
l2
,
∃
l
,
l2
≡
l1
++
l
)
ll2
ll1
.
Proof
.
Proof
.
rewrite
/
mono_list_list_auth
/
mono_list_list_lb
-
assoc
-
auth_frag_op
rewrite
/
mono_list_list_auth
/
mono_list_list_lb
-
assoc
-
auth_frag_op
auth_both_valid
-
max_prefix_list_list_included_includedN
auth_both_valid
-
max_prefix_list_list_included_includedN
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
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!
Save comment
Cancel
Please
register
or
sign in
to comment