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
Dan Frumin
ReLoC-v1
Commits
e87e2cd8
Commit
e87e2cd8
authored
May 13, 2016
by
Amin Timany
Browse files
Add typing rules for Fμ,ref,par
parent
43769f55
Changes
2
Hide whitespace changes
Inline
Side-by-side
F_mu_ref_par/typing.v
View file @
e87e2cd8
...
...
@@ -49,7 +49,8 @@ Inductive typed (Γ : list type) : expr → type → Prop :=
|
TStore
e
e
'
τ
:
typed
Γ
e
(
Tref
τ
)
→
typed
Γ
e
'
τ
→
typed
Γ
(
Store
e
e
'
)
TUnit
|
TCAS
e1
e2
e3
τ
:
typed
Γ
e1
(
Tref
τ
)
→
typed
Γ
e2
τ
→
typed
Γ
e3
τ
→
typed
Γ
(
CAS
e1
e2
e3
)
TUnit
typed
Γ
e1
(
Tref
τ
)
→
typed
Γ
e2
τ
→
typed
Γ
e3
τ
→
typed
Γ
(
CAS
e1
e2
e3
)
TUnit
.
Local
Hint
Extern
1
=>
...
...
@@ -63,8 +64,7 @@ Proof.
assert
(
∀
{
A
}
`
{
Ids
A
}
`
{
Rename
A
}
(
s1
s2
:
nat
→
A
)
x
,
(
x
≠
0
→
s1
(
pred
x
)
=
s2
(
pred
x
))
→
up
s1
x
=
up
s2
x
).
{
intros
A
H1
H2
.
rewrite
/
up
=>
s1
s2
[
|
x
]
//=; auto with f_equal omega. }
induction
Htyped
=>
s1
s2
Hs
;
f_equal
/=
;
eauto
using
lookup_lt_Some
with
omega
typed_subst_invariant
.
induction
Htyped
=>
s1
s2
Hs
;
f_equal
/=
;
eauto
using
lookup_lt_Some
with
omega
typed_subst_invariant
.
Qed
.
Definition
env_subst
(
vs
:
list
val
)
(
x
:
var
)
:
expr
:=
...
...
_CoqProject
View file @
e87e2cd8
...
...
@@ -17,3 +17,4 @@ F_mu_ref/logrel.v
F_mu_ref/fundamental.v
F_mu_ref_par/lang.v
F_mu_ref_par/rules.v
F_mu_ref_par/typing.v
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