Origin Sections Doc

bool_1

Nuprl Section: bool_1 - Definitions, theorems and tactics for the boolean type and boolean-related expressions.

Introduction

Selected Objects
DEFbool == Unit+Unit
DEFbtruetrue ==
DEFbfalsefalse ==
DEFifthenelseif b t else f fi == dec(b ; t; f)
DEFassertb == if b True else False fi
DEFb2ib2i(b) == if b 1 else 0 fi
THMb2i_boundsb:. 0b2i(b) & b2i(b)1
DEFbnotb == if b false else true fi
DEFbandpq == if p q else false fi
DEFborp q == if p true else q fi
DEFeq_boolp=q == (pq) (pq)
DEFbxorpq == (pq) (pq)
DEFbimpliespq == p q
DEFrev_bimpliespq == qp
DEFeq_inti=j == if i=jtrue; false fi
DEFlt_inti < z j == if i < j true ; false fi
DEFeq_atomx=yAtom == if x=yAtomtrue; false fi
DEFle_inti z j == j < z i
COMbool_thms================ GENERAL THEOREMS ================
THMbtrue_neq_bfalsetrue = false
THMbool_casesb:. b = true b = false
THMbool_indP:(Prop). P(false) P(true) {b:. P(b)}
THMdecidable__equal_boola,b:. Dec(a = b)
THMbnot_bnot_elimp:. p = p
THMbnot_thru_bandp,q:. (pq) = (p q)
THMbnot_thru_borp,q:. (p q) = (pq)
THMbnot_of_le_inti,j:. i z j = j < z i
THMbimplies_weakeningu,v:. u = v uv
THMbimplies_transitivityu,v,w:. uv vw uw
THMassert_functionality_wrt_bimpliesu,v:. uv {u v}
COMbool_simp_1CONSTANT SIMPLIFICATION ...
THMbor_ff_simpu:. (u false) = u
THMbor_tt_simpu:. (u true) = true
THMband_ff_simpu:. (ufalse) = false
THMband_tt_simpu:. (utrue) = u
COMassert_com`ASSERT'-RELATED THEOREMS
THMassert_of_tttrue
THMassert_of_fffalse
THMassert_elimb:. b b = true
THMnot_assert_elimb:. b b = false
THMeqtt_to_assertb:. b = true b
THMeqff_to_assertb:. b = false b
THMdecidable__assertb:. Dec(b)
THMiff_imp_equal_boola,b:. (a b) a = b
THMassert_of_eq_atomx,y:Atom. x=yAtom x = y
THMassert_of_eq_intx,y:. x=y x = y
THMneg_assert_of_eq_intx,y:. x=y xy
THMneg_assert_of_eq_atomx,y:Atom. x=yAtom xy
THMassert_of_lt_intx,y:. x < z y x < y
THMassert_of_eq_int_rwx,y:. {x=y x = y}
THMassert_of_eq_boolp,q:. p=q p = q
THMassert_of_bnotp:. p p
THMassert_of_bandp,q:. (pq) p & q
THMassert_of_borp,q:. (p q) p q
THMassert_of_bimpliesp,q:. pq (p q)
THMassert_of_le_intx,y:. x z y xy
THMite_rw_testn:, i:{1..n}. 0 = 0 & n = 0 False
THMite_rw_falseb:, x,y:T. b if b x else y fi = y
THMite_rw_trueb:, x,y:T. b if b x else y fi = x
THMfun_thru_itef:(ST), b:, p,q:S. f(if b p else q fi) = if b f(p) else f(q) fi
COMold_bool_1_stuffOLD STUFF ...
THMeq_int_eq_falsei,j:. ij (i=j) = false
THMeq_int_eq_truei,j:. i = j (i=j) = true
THMeq_int_eq_false_elimi,j:. (i=j) = false ij
THMeq_int_eq_true_elimi,j:. (i=j) = true i = j
THMeq_int_cases_testx,y:A, P:(AProp), i,j:. P(if i=j x else y fi) P(if i=j x else y fi)