Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
iris-coq
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Janno
iris-coq
Commits
4c056f5e
Commit
4c056f5e
authored
Jun 27, 2016
by
Jacques-Henri Jourdan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Counting CMRA
parent
b3d2ff9b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
23 additions
and
1 deletion
+23
-1
_CoqProject
_CoqProject
+1
-0
algebra/count.v
algebra/count.v
+21
-0
heap_lang/lang.v
heap_lang/lang.v
+1
-1
No files found.
_CoqProject
View file @
4c056f5e
...
...
@@ -55,6 +55,7 @@ algebra/upred_tactics.v
algebra/upred_big_op.v
algebra/upred_hlist.v
algebra/frac.v
algebra/count.v
algebra/csum.v
algebra/list.v
algebra/updates.v
...
...
algebra/count.v
0 → 100644
View file @
4c056f5e
From
iris
.
algebra
Require
Export
cmra
.
From
iris
.
algebra
Require
Import
upred
.
Notation
count
:
=
nat
(
only
parsing
).
Section
count
.
Canonical
Structure
countC
:
=
leibnizC
count
.
Instance
count_valid
:
Valid
count
:
=
λ
_
,
True
.
Instance
count_pcore
:
PCore
count
:
=
λ
_
,
None
.
Instance
count_op
:
Op
count
:
=
λ
x
y
,
(
x
+
y
)%
nat
.
Definition
count_ra_mixin
:
RAMixin
nat
.
Proof
.
by
split
;
try
apply
_
.
Qed
.
Canonical
Structure
countR
:
=
discreteR
count
count_ra_mixin
.
End
count
.
(** Internalized properties *)
Lemma
count_equivI
{
M
}
(
x
y
:
count
)
:
x
≡
y
⊣
⊢
(
x
=
y
:
uPred
M
).
Proof
.
by
uPred
.
unseal
.
Qed
.
Lemma
count_validI
{
M
}
(
x
:
count
)
:
✓
x
⊣
⊢
(
True
:
uPred
M
).
Proof
.
by
uPred
.
unseal
.
Qed
.
heap_lang/lang.v
View file @
4c056f5e
...
...
@@ -34,7 +34,7 @@ Proof.
Qed
.
(** A typeclass for whether a variable is bound in a given
context. Making this a typeclass means we can use tpeclass search
context. Making this a typeclass means we can use t
y
peclass search
to program solving these constraints, so this becomes extensible.
Also, since typeclass search runs *after* unification, Coq has already
inferred the X for us; if we were to go for embedded proof terms ot
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a 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