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
Iris
RefinedC
Commits
6695e9e0
Commit
6695e9e0
authored
Aug 03, 2021
by
Michael Sammler
Browse files
add li_impl_check_injection_tac
parent
edadb0e7
Pipeline
#51765
passed with stage
in 34 minutes and 28 seconds
Changes
1
Pipelines
3
Hide whitespace changes
Inline
Side-by-side
theories/lithium/interpreter.v
View file @
6695e9e0
...
...
@@ -546,7 +546,10 @@ Ltac liFalse :=
|
|-
False
=>
shelve
end
.
(* There can be some goals where one should not call injection on an
hypothesis that is introduced. The [li_impl_check_injection_tac] hook
allows the client to customize this. *)
Ltac
li_impl_check_injection_tac
:
=
idtac
.
Ltac
liImpl
:
=
lazymatch
goal
with
(* relying on the fact that unification variables cannot contain
...
...
@@ -569,7 +572,8 @@ Ltac liImpl :=
|
|-
false
=
false
->
?P
→
_
=>
move
=>
_;
match
P
with
|
∃
_
,
_
=>
fail
1
"handled by do_forall"
|
_
=
_
=>
let
Hi
:
=
fresh
"Hi"
in
move
=>
Hi
;
injection
Hi
;
clear
Hi
|
_
=
_
=>
li_impl_check_injection_tac
;
let
Hi
:
=
fresh
"Hi"
in
move
=>
Hi
;
injection
Hi
;
clear
Hi
|
_
=>
check_hyp_not_exists
P
;
intros
?
;
subst
|
_
=>
move
=>
_
end
...
...
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