Nuprl Lemma : int-decr-map-remove-prop
∀[Value:Type]. ∀[m:int-decr-map-type(Value)]. ∀[k1,k2:ℤ].
  (int-decr-map-find(k1;int-decr-map-remove(k2;m))
  = if (k1 =z k2) then inr ⋅  else int-decr-map-find(k1;m) fi 
  ∈ (Value?))
Proof
Definitions occuring in Statement : 
int-decr-map-remove: int-decr-map-remove(k;m), 
int-decr-map-find: int-decr-map-find(k;m), 
int-decr-map-type: int-decr-map-type(Value), 
ifthenelse: if b then t else f fi , 
eq_int: (i =z j), 
it: ⋅, 
uall: ∀[x:A]. B[x], 
unit: Unit, 
inr: inr x , 
union: left + right, 
int: ℤ, 
universe: Type, 
equal: s = t ∈ T
Definitions unfolded in proof : 
uall: ∀[x:A]. B[x], 
member: t ∈ T, 
int-decr-map-type: int-decr-map-type(Value), 
all: ∀x:A. B[x], 
nat: ℕ, 
implies: P ⇒ Q, 
false: False, 
ge: i ≥ j , 
uimplies: b supposing a, 
satisfiable_int_formula: satisfiable_int_formula(fmla), 
exists: ∃x:A. B[x], 
not: ¬A, 
top: Top, 
and: P ∧ Q, 
prop: ℙ, 
so_lambda: λ2x y.t[x; y], 
pi1: fst(t), 
so_apply: x[s1;s2], 
gt: i > j, 
subtype_rel: A ⊆r B, 
or: P ∨ Q, 
exposed-bfalse: exposed-bfalse, 
bool: 𝔹, 
unit: Unit, 
it: ⋅, 
btrue: tt, 
uiff: uiff(P;Q), 
ifthenelse: if b then t else f fi , 
int-decr-map-find: int-decr-map-find(k;m), 
find-combine: find-combine(cmp;l), 
list_ind: list_ind, 
int-decr-map-remove: int-decr-map-remove(k;m), 
remove-combine: remove-combine(cmp;l), 
nil: [], 
bfalse: ff, 
sq_type: SQType(T), 
guard: {T}, 
bnot: ¬bb, 
assert: ↑b, 
cons: [a / b], 
colength: colength(L), 
decidable: Dec(P), 
so_lambda: λ2x.t[x], 
so_apply: x[s], 
less_than: a < b, 
squash: ↓T, 
less_than': less_than'(a;b), 
iff: P ⇐⇒ Q, 
rev_implies: P ⇐ Q, 
nequal: a ≠ b ∈ T , 
has-value: (a)↓
Latex:
\mforall{}[Value:Type].  \mforall{}[m:int-decr-map-type(Value)].  \mforall{}[k1,k2:\mBbbZ{}].
    (int-decr-map-find(k1;int-decr-map-remove(k2;m))
    =  if  (k1  =\msubz{}  k2)  then  inr  \mcdot{}    else  int-decr-map-find(k1;m)  fi  )
Date html generated:
2016_05_17-PM-01_50_25
Last ObjectModification:
2016_01_17-AM-11_38_15
Theory : datatype-signatures
Home
Index