Nuprl Theory formula

(only non hidden objects are presented)

DISPFormula_dfFormula== Formula
ABSFormulaFormula == rec(formula.Var + formula + formula formula + formula formula + formula formula)
THMFormula_wfFormula
MLRecMemberFormulaCDlet RecMemberFormulaCD = Unfolds ``Formula member`` 0 THEN RecTypeEqTypeCD THEN Try (Fold `Formula` 0) ;;
DISPformula_case_df{[SOFT}case{->0} <F:Formula:L>:{\\}<y:Var> <c1:Var case:L>{\\} <p1:P> <c2:case:L>{\\}<p2:Conjunct 1><p3:Conjunct 2> <c3: case:L>{\\}<p4:disjunct 1><p5: disjunct 2> <c4: case:L> ;{\\}<p6:Antecedent><p7:Consequent> <c5:case:L>{<-}{]} == case <F>: <y> <c1> <p1> <c2> <p2><p3> <c3> <p4><p5> <c4> <p6><p7> <c5>
ABSformula_casecase F: x varC[x]; p1 notC[p1]; p2p3 andC[p2; p3]; p4p5 orC[p4; p5]; p6p7 impC[p6; p7]; == case F of inl(x) => varC[x] | inr(F) => case F of inl(p1) => notC[p1] | inr(F) => case F of inl(x) => let <p2,p3> = x in andC[p2; p3] | inr(F) => case F of inl(x) => let <p4,p5> = x in orC[p4; p5] | inr(x) => let <p6,p7> = x in impC[p6; p7]
DISPfvar_df<x:Var:L>== <x>
ABSfvarF == inl F
THMfvar_wfx:Var. x Formula
THMcomb_for_fvar_wf(x,z.x) x:Var True Formula
DISPfnot_df<p:Formula:L>== <p>
ABSfnotp == inr (inl p )
THMfnot_wfx:Formula. x Formula
THMcomb_for_fnot_wf(x,z.x) x:Formula True Formula
DISPfand_df<p:Formula:L><q:Formula:*>== <p><q>
ABSfandpq == inr inr (inl <p, q> )
THMfand_wfp,q:Formula. pq Formula
THMcomb_for_fand_wf(p,q,z.pq) p:Formula q:Formula True Formula
DISPfor_df<p:Formula:L><q:Formula:L>== <p><q>
ABSforpq == inr inr inr (inl <p, q> )
THMfor_wfp,q:Formula. pq Formula
THMcomb_for_for_wf(p,q,z.pq) p:Formula q:Formula True Formula
DISPfimp_df<p:Formula:L><q:Formula:L>== <p><q>
ABSfimppq == inr inr inr inr <p, q>
THMfimp_wfp,q:Formula. pq Formula
THMcomb_for_fimp_wf(p,q,z.pq) p:Formula q:Formula True Formula
MLformula_case_unrolllet get_formula_case_arg = fst o fst o dest_term o snd o hd o snd o dest_term;; let formula_caseC t = let arg = (get_formula_case_arg t) in (FwdMacroC (concat `formula_case_` (concat arg `_unrollC`)) (AllC [UnfoldC `formula_case`; UnfoldC arg; ReduceC]) t) ;; let formula_case_unrollC = FirstC[formula_caseC case F: x X[x]; a A[a]; bc B[b; c]; de C[d; e]; fg D[f; g];; formula_caseC case F: x X[x]; a A[a]; bc B[b; c]; de C[d; e]; fg D[f; g];; formula_caseC case FFF: x X[x]; a A[a]; bc B[b; c]; de C[d; e]; fg D[f; g];; formula_caseC case FFF: x X[x]; a A[a]; bc B[b; c]; de C[d; e]; fg D[f; g];; formula_caseC case FFF: x X[x]; a A[a]; bc B[b; c]; de C[d; e]; fg D[f; g];] ;; add_AbReduce_conv `formula_case` formula_case_unrollC;;
MLmk_formula_case_termlet mk_formula_case_term v (x,vcase) (p,not_case) (p1,q1,and_case) (p2,q2,or_case) (p3,q3,imp_case) = mk_ab_term (`formula_case`, []) [[],v;[x],vcase;[p],not_case; [p1;q1],and_case; [p2;q2],or_case; [p3;q3],imp_case] ;;
DISPsubformula_dfsubformula(<F:Formula:*>)== subformula(<F>)
ABSsubformulasubformula(F) == case F: x []; p (p::[]); pq (p::q::[]); pq (p::q::[]); pq (p::q::[]);
THMsubformula_wfF:Formula. subformula(F) Formula List

the other theories