### Nuprl Lemma : descending-append

`∀[A:Type]. ∀[<:A ⟶ A ⟶ ℙ].`
`  ∀L1,L2:A List.`
`    (descending(a,b.<[a;b];L1 @ L2)`
`    `⇐⇒` descending(a,b.<[a;b];L1)`
`        ∧ descending(a,b.<[a;b];L2)`
`        ∧ (<[hd(L2);last(L1)]) supposing (0 < ||L2|| and 0 < ||L1||))`

Proof

Definitions occuring in Statement :  descending: `descending(a,b.<[a; b];L)` last: `last(L)` length: `||as||` append: `as @ bs` hd: `hd(l)` list: `T List` less_than: `a < b` uimplies: `b supposing a` uall: `∀[x:A]. B[x]` prop: `ℙ` so_apply: `x[s1;s2]` all: `∀x:A. B[x]` iff: `P `⇐⇒` Q` and: `P ∧ Q` function: `x:A ⟶ B[x]` natural_number: `\$n` universe: `Type`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` iff: `P `⇐⇒` Q` and: `P ∧ Q` implies: `P `` Q` member: `t ∈ T` so_lambda: `λ2x y.t[x; y]` so_apply: `x[s1;s2]` prop: `ℙ` rev_implies: `P `` Q` uimplies: `b supposing a` ge: `i ≥ j ` decidable: `Dec(P)` or: `P ∨ Q` less_than: `a < b` squash: `↓T` not: `¬A` satisfiable_int_formula: `satisfiable_int_formula(fmla)` exists: `∃x:A. B[x]` false: `False` assert: `↑b` ifthenelse: `if b then t else f fi ` btrue: `tt` less_than': `less_than'(a;b)` cons: `[a / b]` bfalse: `ff` subtype_rel: `A ⊆r B` descending: `descending(a,b.<[a; b];L)` cand: `A c∧ B` true: `True` guard: `{T}` subtract: `n - m` uiff: `uiff(P;Q)` top: `Top` le: `A ≤ B` lelt: `i ≤ j < k` int_seg: `{i..j-}` nat: `ℕ` last: `last(L)` sq_type: `SQType(T)` it: `⋅` nil: `[]` select: `L[n]` so_apply: `x[s1;s2;s3]` so_lambda: so_lambda3 append: `as @ bs` nat_plus: `ℕ+`
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt lambdaFormation_alt independent_pairFormation universeIsType cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality sqequalRule lambdaEquality_alt applyEquality inhabitedIsType hypothesis productIsType isectIsType natural_numberEquality because_Cache independent_isectElimination dependent_functionElimination unionElimination imageElimination productElimination approximateComputation independent_functionElimination dependent_pairFormation_alt int_eqEquality Error :memTop,  voidElimination promote_hyp hypothesis_subsumption functionIsType universeEquality instantiate rename imageMemberEquality baseClosed baseApply pointwiseFunctionality closedConclusion cumulativity functionEquality equalitySymmetry equalityTransitivity isect_memberEquality_alt addEquality dependent_set_memberEquality_alt setElimination productEquality hyp_replacement minusEquality intEquality equalityIsType1 applyLambdaEquality

Latex:
\mforall{}[A:Type].  \mforall{}[<:A  {}\mrightarrow{}  A  {}\mrightarrow{}  \mBbbP{}].
\mforall{}L1,L2:A  List.
(descending(a,b.<[a;b];L1  @  L2)
\mLeftarrow{}{}\mRightarrow{}  descending(a,b.<[a;b];L1)
\mwedge{}  descending(a,b.<[a;b];L2)
\mwedge{}  (<[hd(L2);last(L1)])  supposing  (0  <  ||L2||  and  0  <  ||L1||))

Date html generated: 2020_05_20-AM-08_07_28
Last ObjectModification: 2019_12_31-PM-06_30_35

Theory : general

Home Index