Nuprl Lemma : assert-palindrome-test

[T:Type]. ∀[eq:EqDecider(T)]. ∀[L:T List].  uiff(↑palindrome-test(eq;L);rev(L) L ∈ (T List))


Proof




Definitions occuring in Statement :  palindrome-test: palindrome-test(eq;L) reverse: rev(as) list: List deq: EqDecider(T) assert: b uiff: uiff(P;Q) uall: [x:A]. B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  palindrome-test: palindrome-test(eq;L) uiff: uiff(P;Q) and: P ∧ Q uimplies: supposing a uall: [x:A]. B[x] member: t ∈ T so_lambda: so_lambda(x,y,z.t[x; y; z]) has-value: (a)↓ bool: 𝔹 deq: EqDecider(T) so_apply: x[s1;s2;s3] all: x:A. B[x] so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] implies:  Q guard: {T} iff: ⇐⇒ Q subtype_rel: A ⊆B prop: rev_implies:  Q top: Top band: p ∧b q ifthenelse: if then else fi  btrue: tt nat: false: False ge: i ≥  satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] not: ¬A or: P ∨ Q assert: b list-deq: list-deq(eq) list_ind: list_ind nil: [] it: null: null(as) true: True sq_type: SQType(T) cons: [a b] colength: colength(L) so_lambda: λ2x.t[x] so_apply: x[s] le: A ≤ B decidable: Dec(P) less_than: a < b squash: T less_than': less_than'(a;b) unit: Unit bfalse: ff bnot: ¬bb eqof: eqof(d)
Lemmas referenced :  iff_weakening_uiff assert_wf taba_wf bool_wf btrue_wf value-type-has-value union-value-type unit_wf2 band_wf list_accum_wf zip_wf reverse_wf assert_functionality_wrt_uiff taba-property assert_witness equal_wf list_wf uiff_wf palindrome-test_wf deq_wf length-reverse length_wf nat_properties satisfiable-full-omega-tt intformand_wf intformle_wf itermConstant_wf itermVar_wf intformless_wf int_formula_prop_and_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf ge_wf less_than_wf equal-wf-T-base nat_wf colength_wf_list less_than_transitivity1 less_than_irreflexivity list-cases length_of_nil_lemma zip_nil_lemma list_accum_nil_lemma subtype_base_sq bool_subtype_base iff_imp_equal_bool list-deq_wf nil_wf assert_of_band iff_wf equal-wf-base product_subtype_list spread_cons_lemma set_subtype_base le_wf int_subtype_base length_of_cons_lemma zip_cons_nil_lemma cons_wf non_neg_length intformeq_wf itermAdd_wf int_formula_prop_eq_lemma int_term_value_add_lemma decidable__le intformnot_wf int_formula_prop_not_lemma subtract_wf itermSubtract_wf int_term_value_subtract_lemma decidable__equal_int equal-wf-base-T zip_cons_cons_lemma list_accum_cons_lemma add-is-int-iff false_wf eqtt_to_assert eqff_to_assert bool_cases_sqequal assert-bnot bfalse_wf eqof_wf iff_transitivity safe-assert-deq reduce_hd_cons_lemma hd_wf squash_wf length_cons_ge_one subtype_rel_list top_wf reduce_tl_cons_lemma and_wf tl_wf deq_property
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity cut addLevel sqequalHypSubstitution productElimination thin independent_pairFormation isect_memberFormation independent_isectElimination introduction extract_by_obid isectElimination cumulativity hypothesisEquality hypothesis sqequalRule lambdaEquality callbyvalueReduce because_Cache applyEquality setElimination rename dependent_functionElimination productEquality independent_functionElimination universeEquality independent_pairEquality isect_memberEquality axiomEquality equalityTransitivity equalitySymmetry lambdaFormation voidElimination voidEquality hyp_replacement applyLambdaEquality intEquality intWeakElimination natural_numberEquality dependent_pairFormation int_eqEquality computeAll sqequalAxiom unionElimination baseClosed instantiate impliesFunctionality promote_hyp hypothesis_subsumption addEquality dependent_set_memberEquality imageElimination pointwiseFunctionality baseApply closedConclusion equalityElimination levelHypothesis andLevelFunctionality impliesLevelFunctionality imageMemberEquality

Latex:
\mforall{}[T:Type].  \mforall{}[eq:EqDecider(T)].  \mforall{}[L:T  List].    uiff(\muparrow{}palindrome-test(eq;L);rev(L)  =  L)



Date html generated: 2018_05_21-PM-09_01_34
Last ObjectModification: 2017_07_26-PM-06_24_32

Theory : general


Home Index