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
Open sidebar
Rodolphe Lepigre
Iris
Commits
010154e2
Commit
010154e2
authored
Mar 15, 2017
by
Ralf Jung
Browse files
fix fractional IntoAnd instances
parent
039f9fd5
Changes
1
Hide whitespace changes
Inline
Sidebyside
Showing
1 changed file
with
16 additions
and
6 deletions
+16
6
theories/base_logic/lib/fractional.v
theories/base_logic/lib/fractional.v
+16
6
No files found.
theories/base_logic/lib/fractional.v
View file @
010154e2
...
@@ 128,14 +128,24 @@ Section fractional.
...
@@ 128,14 +128,24 @@ Section fractional.
FromSep
Q
P
P
.
FromSep
Q
P
P
.
Proof
.
rewrite
/
FromSep
=>[>
<]
[>
_
].
by
rewrite
Qp_div_2
.
Qed
.
Proof
.
rewrite
/
FromSep
=>[>
<]
[>
_
].
by
rewrite
Qp_div_2
.
Qed
.
Global
Instance
into_and_fractional
P
P1
P2
Φ
q1
q2
:
Global
Instance
into_and_fractional
b
P
P1
P2
Φ
q1
q2
:
AsFractional
P
Φ
(
q1
+
q2
)
→
AsFractional
P1
Φ
q1
→
AsFractional
P2
Φ
q2
→
AsFractional
P
Φ
(
q1
+
q2
)
→
AsFractional
P1
Φ
q1
→
AsFractional
P2
Φ
q2
→
IntoAnd
false
P
P1
P2
.
IntoAnd
b
P
P1
P2
.
Proof
.
by
rewrite
/
IntoAnd
=>[>
>]
[>
_
]
[>
_
].
Qed
.
Proof
.
Global
Instance
into_and_fractional_half
P
Q
Φ
q
:
(* TODO: We need a better way to handle this boolean here.
Ideally, it'd not even be possible to make the mistake that
was originally made here, which is to give this instance for
"false" only, thus breaking some intro patterns. *)
intros
H1
H2
H3
.
apply
mk_into_and_sep
.
revert
H1
H2
H3
.
by
rewrite
/
IntoAnd
=>[>
>]
[>
_
]
[>
_
].
Qed
.
Global
Instance
into_and_fractional_half
b
P
Q
Φ
q
:
AsFractional
P
Φ
q
→
AsFractional
Q
Φ
(
q
/
2
)
→
AsFractional
P
Φ
q
→
AsFractional
Q
Φ
(
q
/
2
)
→
IntoAnd
false
P
Q
Q

100
.
IntoAnd
b
P
Q
Q

100
.
Proof
.
by
rewrite
/
IntoAnd
{
1
}(
Qp_div_2
q
)=>[>>][>
_
].
Qed
.
Proof
.
intros
H1
H2
.
apply
mk_into_and_sep
.
revert
H1
H2
.
by
rewrite
/
IntoAnd
{
1
}(
Qp_div_2
q
)=>[>>][>
_
].
Qed
.
(* The instance [frame_fractional] can be tried at all the nodes of
(* The instance [frame_fractional] can be tried at all the nodes of
the proof search. The proof search then fails almost always on
the proof search. The proof search then fails almost always on
...
...
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