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
Rodolphe Lepigre
Iris
Commits
b1fa82f0
Commit
b1fa82f0
authored
Dec 14, 2016
by
Ralf Jung
Browse files
proofmode: show that quantifiers preserve purity
parent
997c3ed8
Changes
1
Hide whitespace changes
Inline
Side-by-side
theories/proofmode/class_instances.v
View file @
b1fa82f0
...
...
@@ -31,6 +31,19 @@ Global Instance into_pure_cmra_valid `{CMRADiscrete A} (a : A) :
@
IntoPure
M
(
✓
a
)
(
✓
a
).
Proof
.
by
rewrite
/
IntoPure
discrete_valid
.
Qed
.
Global
Instance
into_pure_exist
{
X
:
Type
}
(
Φ
:
X
→
uPred
M
)
φ
:
(
∀
x
,
@
IntoPure
M
(
Φ
x
)
(
φ
x
))
→
@
IntoPure
M
(
∃
x
,
Φ
x
)
(
∃
x
,
φ
x
).
Proof
.
rewrite
/
IntoPure
=>
Hx
.
apply
exist_elim
=>
x
.
rewrite
Hx
.
apply
pure_elim'
=>
H
φ
.
apply
pure_intro
.
eauto
.
Qed
.
Global
Instance
into_pure_forall
{
X
:
Type
}
(
Φ
:
X
→
uPred
M
)
φ
:
(
∀
x
,
@
IntoPure
M
(
Φ
x
)
(
φ
x
))
→
@
IntoPure
M
(
∀
x
,
Φ
x
)
(
∀
x
,
φ
x
).
Proof
.
rewrite
/
IntoPure
=>
Hx
.
rewrite
-
pure_forall_2
.
by
setoid_rewrite
Hx
.
Qed
.
(* FromPure *)
Global
Instance
from_pure_pure
φ
:
@
FromPure
M
⌜φ⌝
φ
.
Proof
.
done
.
Qed
.
...
...
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