Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Lennard Gäher
Iris
Commits
a3a4c80f
Commit
a3a4c80f
authored
Jun 15, 2018
by
Robbert Krebbers
Browse files
Move comment about `IsCons` and `IsApp`.
parent
7ab36303
Changes
2
Hide whitespace changes
Inline
Side-by-side
theories/proofmode/class_instances_bi.v
View file @
a3a4c80f
...
...
@@ -713,9 +713,6 @@ Proof.
by
rewrite
sep_and
intuitionistically_and
and_sep_intuitionistically
.
Qed
.
(* We use [IsCons] and [IsApp] to make sure that [frame_big_sepL_cons] and
[frame_big_sepL_app] cannot be applied repeatedly often when having
[ [∗ list] k ↦ x ∈ ?e, Φ k x] with [?e] an evar. *)
Global
Instance
into_sep_big_sepL_cons
{
A
}
(
Φ
:
nat
→
A
→
PROP
)
l
x
l'
:
IsCons
l
x
l'
→
IntoSep
([
∗
list
]
k
↦
y
∈
l
,
Φ
k
y
)
...
...
theories/proofmode/classes.v
View file @
a3a4c80f
...
...
@@ -277,6 +277,9 @@ Hint Mode AddModal + - ! ! : typeclass_instances.
Lemma
add_modal_id
{
PROP
:
bi
}
(
P
Q
:
PROP
)
:
AddModal
P
P
Q
.
Proof
.
by
rewrite
/
AddModal
wand_elim_r
.
Qed
.
(** We use the classes [IsCons] and [IsApp] to make sure that instances such as
[frame_big_sepL_cons] and [frame_big_sepL_app] cannot be applied repeatedly
often when having [ [∗ list] k ↦ x ∈ ?e, Φ k x] with [?e] an evar. *)
Class
IsCons
{
A
}
(
l
:
list
A
)
(
x
:
A
)
(
k
:
list
A
)
:
=
is_cons
:
l
=
x
::
k
.
Class
IsApp
{
A
}
(
l
k1
k2
:
list
A
)
:
=
is_app
:
l
=
k1
++
k2
.
Global
Hint
Mode
IsCons
+
!
-
-
:
typeclass_instances
.
...
...
Write
Preview
Supports
Markdown
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