Nuprl Lemma : first_index_property
ā[T:Type]. ā[P:T ā¶ š¹]. ā[L:T List].
(āP[L[index-of-first x in L.P[x] - 1]]) ā§ (Ā¬(āxāfirstn(index-of-first x in L.P[x] - 1;L). āP[x]))
supposing 0 < index-of-first x in L.P[x]
Proof
Definitions occuring in Statement :
first_index: index-of-first x in L.P[x]
,
firstn: firstn(n;as)
,
l_exists: (āxāL. P[x])
,
select: L[n]
,
list: T List
,
assert: āb
,
bool: š¹
,
less_than: a < b
,
uimplies: b supposing a
,
uall: ā[x:A]. B[x]
,
so_apply: x[s]
,
not: Ā¬A
,
and: P ā§ Q
,
function: x:A ā¶ B[x]
,
subtract: n - m
,
natural_number: $n
,
universe: Type
Definitions unfolded in proof :
all: āx:A. B[x]
,
member: t ā T
,
uall: ā[x:A]. B[x]
,
so_apply: x[s]
,
int_seg: {i..j-}
,
uimplies: b supposing a
,
guard: {T}
,
lelt: i ā¤ j < k
,
and: P ā§ Q
,
decidable: Dec(P)
,
or: P āØ Q
,
satisfiable_int_formula: satisfiable_int_formula(fmla)
,
exists: āx:A. B[x]
,
false: False
,
implies: P
ā Q
,
not: Ā¬A
,
top: Top
,
prop: ā
,
less_than: a < b
,
squash: āT
,
first_index: index-of-first x in L.P[x]
,
iff: P
āā Q
,
cand: A cā§ B
,
so_lambda: Ī»2x.t[x]
,
subtype_rel: A ār B
,
ge: i ā„ j
,
rev_implies: P
ā Q
,
le: A ā¤ B
,
nat: ā
Lemmas referenced :
btrue_neq_bfalse,
assert_elim,
equal_wf,
and_wf,
not_assert_elim,
member-firstn,
l_exists_iff,
assert_witness,
bool_wf,
list_wf,
less_than_wf,
l_member_wf,
assert_wf,
firstn_wf,
l_exists_wf,
int_term_value_add_lemma,
itermAdd_wf,
lelt_wf,
nat_wf,
le_wf,
nat_properties,
search_wf,
non_neg_length,
int_term_value_subtract_lemma,
itermSubtract_wf,
first_index_wf,
subtract_wf,
int_seg_wf,
int_formula_prop_less_lemma,
intformless_wf,
decidable__lt,
int_formula_prop_wf,
int_term_value_var_lemma,
int_term_value_constant_lemma,
int_formula_prop_le_lemma,
int_formula_prop_not_lemma,
int_formula_prop_and_lemma,
itermVar_wf,
itermConstant_wf,
intformle_wf,
intformnot_wf,
intformand_wf,
satisfiable-full-omega-tt,
decidable__le,
length_wf,
int_seg_properties,
select_wf,
length_wf_nat,
search_property
Rules used in proof :
cut,
lemma_by_obid,
sqequalHypSubstitution,
sqequalSubstitution,
sqequalTransitivity,
computationStep,
sqequalReflexivity,
dependent_functionElimination,
thin,
isectElimination,
hypothesisEquality,
hypothesis,
lambdaEquality,
applyEquality,
cumulativity,
setElimination,
rename,
independent_isectElimination,
natural_numberEquality,
productElimination,
unionElimination,
dependent_pairFormation,
int_eqEquality,
intEquality,
isect_memberEquality,
voidElimination,
voidEquality,
sqequalRule,
independent_pairFormation,
computeAll,
because_Cache,
imageElimination,
equalityTransitivity,
equalitySymmetry,
setEquality,
addEquality,
introduction,
functionEquality,
universeEquality,
isect_memberFormation,
independent_pairEquality,
independent_functionElimination,
lambdaFormation,
dependent_set_memberEquality
Latex:
\mforall{}[T:Type]. \mforall{}[P:T {}\mrightarrow{} \mBbbB{}]. \mforall{}[L:T List].
(\muparrow{}P[L[index-of-first x in L.P[x] - 1]]) \mwedge{} (\mneg{}(\mexists{}x\mmember{}firstn(index-of-first x in L.P[x] - 1;L). \muparrow{}P[x]))
supposing 0 < index-of-first x in L.P[x]
Date html generated:
2016_05_15-PM-04_11_58
Last ObjectModification:
2016_01_16-AM-11_09_00
Theory : general
Home
Index