### Nuprl Lemma : find-xover-val_wf

`∀[T:Type]`
`  ∀[test:T ⟶ 𝔹]. ∀[x:ℤ]. ∀[n:{x...}]. ∀[step:ℕ+]. ∀[f:{x...} ⟶ T].`
`    find-xover-val(test;f;x;n;step) ∈ v:T`
`    × n':{n':ℤ| (n ≤ n') ∧ (v = (f n') ∈ T) ∧ test v = tt} `
`    × {x':ℤ| `
`       ((n' = n ∈ ℤ) ∧ (x' = x ∈ ℤ)) ∨ (((n ≤ x') ∧ test (f x') = ff) ∧ ((n' = (n + step) ∈ ℤ) ∨ ((n + step) ≤ x')))}  `
`    supposing ∃m:{n...}. ∀k:{m...}. test (f k) = tt `
`  supposing value-type(T)`

Proof

Definitions occuring in Statement :  find-xover-val: `find-xover-val(test;f;m;n;step)` int_upper: `{i...}` nat_plus: `ℕ+` value-type: `value-type(T)` bfalse: `ff` btrue: `tt` bool: `𝔹` uimplies: `b supposing a` uall: `∀[x:A]. B[x]` le: `A ≤ B` all: `∀x:A. B[x]` exists: `∃x:A. B[x]` or: `P ∨ Q` and: `P ∧ Q` member: `t ∈ T` set: `{x:A| B[x]} ` apply: `f a` function: `x:A ⟶ B[x]` product: `x:A × B[x]` add: `n + m` int: `ℤ` universe: `Type` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` uimplies: `b supposing a` all: `∀x:A. B[x]` member: `t ∈ T` nat: `ℕ` implies: `P `` Q` false: `False` ge: `i ≥ j ` not: `¬A` satisfiable_int_formula: `satisfiable_int_formula(fmla)` exists: `∃x:A. B[x]` top: `Top` and: `P ∧ Q` prop: `ℙ` guard: `{T}` int_seg: `{i..j-}` lelt: `i ≤ j < k` decidable: `Dec(P)` or: `P ∨ Q` subtype_rel: `A ⊆r B` so_lambda: `λ2x.t[x]` so_apply: `x[s]` sq_type: `SQType(T)` find-xover-val: `find-xover-val(test;f;m;n;step)` has-value: `(a)↓` nat_plus: `ℕ+` int_upper: `{i...}` bool: `𝔹` unit: `Unit` it: `⋅` btrue: `tt` uiff: `uiff(P;Q)` ifthenelse: `if b then t else f fi ` cand: `A c∧ B` assert: `↑b` iff: `P `⇐⇒` Q` true: `True` rev_implies: `P `` Q` squash: `↓T` bfalse: `ff` bnot: `¬bb` sq_stable: `SqStable(P)` subtract: `n - m` le: `A ≤ B` less_than': `less_than'(a;b)`
Lemmas referenced :  nat_properties full-omega-unsat intformand_wf intformle_wf itermConstant_wf itermVar_wf intformless_wf istype-int int_formula_prop_and_lemma istype-void 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 istype-less_than int_seg_properties int_seg_wf subtract-1-ge-0 decidable__equal_int subtract_wf subtype_base_sq set_subtype_base lelt_wf int_subtype_base intformnot_wf intformeq_wf itermSubtract_wf int_formula_prop_not_lemma int_formula_prop_eq_lemma int_term_value_subtract_lemma decidable__le decidable__lt istype-le subtype_rel_self value-type-has-value int-value-type eqtt_to_assert nat_plus_properties int_upper_properties iff_imp_equal_bool btrue_wf true_wf bool_wf le_wf less_than_wf equal_wf equal-wf-T-base eqff_to_assert bool_cases_sqequal bool_subtype_base assert-bnot istype-int_upper upper_subtype_upper sq_stable__le le_transitivity nat_plus_wf itermAdd_wf int_term_value_add_lemma istype-nat value-type_wf istype-universe itermMultiply_wf int_term_value_mul_lemma subtype_rel_function int_upper_wf squash_wf istype-false not-le-2 condition-implies-le add-associates minus-add minus-one-mul add-swap minus-one-mul-top add-commutes add_functionality_wrt_le le-add-cancel iff_weakening_equal not_assert_elim btrue_neq_bfalse bfalse_wf assert_elim istype-assert
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity Error :isect_memberFormation_alt,  cut Error :lambdaFormation_alt,  thin introduction extract_by_obid sqequalHypSubstitution isectElimination hypothesisEquality hypothesis setElimination rename sqequalRule intWeakElimination natural_numberEquality independent_isectElimination approximateComputation independent_functionElimination Error :dependent_pairFormation_alt,  Error :lambdaEquality_alt,  int_eqEquality dependent_functionElimination Error :isect_memberEquality_alt,  voidElimination independent_pairFormation Error :universeIsType,  axiomEquality equalityTransitivity equalitySymmetry Error :isectIsTypeImplies,  Error :inhabitedIsType,  Error :functionIsTypeImplies,  productElimination unionElimination applyEquality instantiate cumulativity intEquality applyLambdaEquality Error :dependent_set_memberEquality_alt,  because_Cache Error :productIsType,  hypothesis_subsumption callbyvalueReduce multiplyEquality addEquality equalityElimination Error :dependent_pairEquality_alt,  Error :equalityIstype,  Error :inlFormation_alt,  baseClosed sqequalBase Error :unionIsType,  baseApply closedConclusion productEquality Error :setIsType,  imageMemberEquality imageElimination promote_hyp Error :functionIsType,  universeEquality minusEquality Error :inrFormation_alt

Latex:
\mforall{}[T:Type]
\mforall{}[test:T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[x:\mBbbZ{}].  \mforall{}[n:\{x...\}].  \mforall{}[step:\mBbbN{}\msupplus{}].  \mforall{}[f:\{x...\}  {}\mrightarrow{}  T].
find-xover-val(test;f;x;n;step)  \mmember{}  v:T
\mtimes{}  n':\{n':\mBbbZ{}|  (n  \mleq{}  n')  \mwedge{}  (v  =  (f  n'))  \mwedge{}  test  v  =  tt\}
\mtimes{}  \{x':\mBbbZ{}|
((n'  =  n)  \mwedge{}  (x'  =  x))
\mvee{}  (((n  \mleq{}  x')  \mwedge{}  test  (f  x')  =  ff)  \mwedge{}  ((n'  =  (n  +  step))  \mvee{}  ((n  +  step)  \mleq{}  x')))\}
supposing  \mexists{}m:\{n...\}.  \mforall{}k:\{m...\}.  test  (f  k)  =  tt
supposing  value-type(T)

Date html generated: 2019_06_20-PM-01_16_31
Last ObjectModification: 2019_01_09-PM-04_07_00

Theory : int_2

Home Index