Nuprl Lemma : modify-combinator1_wf

[n:ℕ]
  ∀[A:ℕn ─→ Type]. ∀[m:ℕ]. ∀[B:ℕm ─→ Type]. ∀[T:Type]. ∀[f:(i:ℕn ─→ (A Top)) ─→ (i:ℕm ─→ (B Top)) ─→ T].
    (modify-combinator1(f) ∈ (i:ℕ1 ─→ if (i =z 0) then one_or_both(A 0;A 1) Top else (i 1) Top fi )
     ─→ (i:ℕm ─→ (B Top))
     ─→ T) 
  supposing 1 < n


Proof




Definitions occuring in Statement :  modify-combinator1: modify-combinator1(f) int_seg: {i..j-} nat: ifthenelse: if then else fi  eq_int: (i =z j) less_than: a < b uimplies: supposing a uall: [x:A]. B[x] top: Top member: t ∈ T apply: a function: x:A ─→ B[x] union: left right subtract: m add: m natural_number: $n universe: Type one_or_both: one_or_both(A;B)
Lemmas :  eq_int_wf bool_wf eqtt_to_assert assert_of_eq_int false_wf decidable__lt subtract_wf less-iff-le condition-implies-le minus-add minus-minus minus-one-mul zero-add add-commutes add_functionality_wrt_le add-associates add-swap le-add-cancel lelt_wf one_or_both_wf top_wf eqff_to_assert equal_wf bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot neg_assert_of_eq_int oob-hasleft_wf oob-getleft_wf int_subtype_base subtype_rel_self assert_wf not-equal-2 oob-hasright_wf oob-getright_wf decidable__le not-le-2 sq_stable__le add-zero minus-zero le-add-cancel-alt subtype_rel-equal le_antisymmetry_iff le-add-cancel2 int_seg_wf nat_wf less_than_wf
\mforall{}[n:\mBbbN{}]
    \mforall{}[A:\mBbbN{}n  {}\mrightarrow{}  Type].  \mforall{}[m:\mBbbN{}].  \mforall{}[B:\mBbbN{}m  {}\mrightarrow{}  Type].  \mforall{}[T:Type].  \mforall{}[f:(i:\mBbbN{}n  {}\mrightarrow{}  (A  i  +  Top))
                                                                                                                      {}\mrightarrow{}  (i:\mBbbN{}m  {}\mrightarrow{}  (B  i  +  Top))
                                                                                                                      {}\mrightarrow{}  T].
        (modify-combinator1(f)  \mmember{}  (i:\mBbbN{}n  -  1  {}\mrightarrow{}  if  (i  =\msubz{}  0)
                                                                                    then  one\_or\_both(A  0;A  1)  +  Top
                                                                                    else  A  (i  +  1)  +  Top
                                                                                    fi  )
          {}\mrightarrow{}  (i:\mBbbN{}m  {}\mrightarrow{}  (B  i  +  Top))
          {}\mrightarrow{}  T) 
    supposing  1  <  n



Date html generated: 2015_07_17-AM-08_59_30
Last ObjectModification: 2015_01_27-PM-01_05_39

Home Index