Nuprl Theory stmt

(only non hidden objects are presented)

DISPstmt_value_dfStmtValue== StmtValue( < f > ; < s > ) StmtValue( < f:f:* > ; < s:s:* > )== StmtValue( < f > ; < s > )
ABSstmt_valueStmtValue(f;s) == Env ?J(Exception)
THMstmt_value_wff:Atom . s:Spec. StmtValue(f;s)
THMstmt_value_totalf:Atom . s:Spec. StmtValue(f;s) total
MLstmt_value_hdlet StmtValueHD i = MoveDepHypsToConcl i THEN Unfold `stmt_value` i TH EN D i THEN D (i+1) THEN RenameVarUsingArg `en` `en' i THENL [RenameVa rUsingArg `ex` `ex' (i+1) THEN Fold `stmt_value_exc` 0; D (i+1) THEN T hin (i+1) THEN Fold `it` 0 THEN Fold `stmt_value_norm` 0];;
DISPstmt_value_exc_dfStmtValueExc( < en:env:* > ; < ex:exc:* > )== StmtValueExc( < en > ; < ex > )
ABSstmt_value_excStmtValueExc(en;ex) == < en, inl ex >
THMstmt_value_exc_wff:Atom . s:Spec. en:Env. ex:J(Exception). StmtValueExc(en;ex) StmtValue(f;s)
DISPstmt_value_norm_dfStmtValueNorm( < en:en:* > )== StmtValueNorm( < en > )
ABSstmt_value_normStmtValueNorm(en) == < en, inr >
THMstmt_value_norm_wff:Atom . s:Spec. en:Env. StmtValueNorm(en) StmtValue(f;s)
DISPstmt_value_cases_df{- > 0}{[SOFT}case < stv:stv:* > {\\}of StmtValueExc( < en:var > , < ex:var > ) - > < E:E:* > {\\} | StmtValueNorm( < en:var > ) - > < N:N:* > {\\}{]}{ < -} == case < stv > of StmtValueExc( < en > , < ex > ) - > < E > | StmtValueNorm( < en > ) - > < N >
ABSstmt_value_casescase stv of StmtValueExc(en,ex) - > E[en; ex] | StmtValueNorm(en) - > N[en] == let < en,r > = stv in case r of inl(ex) = > E[en; ex] | inr(i) = > N[en]
THMstmt_value_cases_wff:Atom . s:Spec. stv:StmtValue(f;s). T:. E:Env J(Exception) T. N:Env T. case stv of StmtValueExc(en,ex) - > E[en;ex] | StmtValueNorm(en) - > N[en] T
THMstmt_value_cases_wf_barf:Atom . s:Spec. stv:bar(StmtValue(f;s)). E:Env J(Exception) bar(StmtValue(f;s)). N:Env bar(StmtValue(f;s)). case stv of StmtValueExc(en,ex) - > E[en;ex] | StmtValueNorm(en) - > N[en] bar(StmtValue(f;s))
THMcomb_for_stmt_value_cases_wf(f,s,stv,T,E,N,z. case stv of StmtValueExc(en,ex) - > E[en;ex] | StmtValueNorm(en) - > N[en] ) f:(Atom ) s:Spec stv:StmtValue(f;s) T: E:(Env J(Exception) T) N:(Env T) True T
MLstmt_value_cases_evallet stmt_value_cases_normC = SimpleMacroC `stmt_value_cases_norm` case StmtValueNorm(en) of StmtValueExc(en',ex) - > E[en'; ex] | StmtValueNorm(en') - > N[en'] N[en]``stmt_value_cases stmt_value_norm``;; let stmt_value_cases_excC = SimpleMacroC `stmt_value_cases_exc` case StmtValueExc(en;x) of StmtValueExc(en',ex) - > E[en'; ex] | StmtValueNorm(en') - > N[en'] E[en; x]``stmt_value_cases stmt_value_exc``;; let stmt_value_casesC = FirstC [stmt_value_cases_normC; stmt_value_cases_excC;] ;; add_AbReduce_conv `stmt_value_cases` stmt_value_casesC ;;
THMstmt_value_cases_normf:Atom . s:Spec. stv:StmtValue(f;s). T:. E:Env J(Exception) T. N:Env T. IsNorm(stv) case stv of StmtValueExc(en,ex) - > E[en;ex] | StmtValueNorm(en) - > N[en] = N[env(stv)]
THMstmt_value_cases_excf:Atom . s:Spec. stv:StmtValue(f;s). T:. E,N:Env T. IsNorm(stv) case stv of StmtValueExc(en,ex) - > E[en] | StmtValueNorm(en) - > N[en] = E[env(stv)]
DISPstmt_value_env_dfenv( < v:stmt_value:* > )== env( < v > )
ABSstmt_value_envenv(v) == case v of StmtValueExc(en,ex) - > en | StmtValueNorm(en) - > en
THMstmt_value_env_wff:Atom . s:Spec. v:StmtValue(f;s). env(v) Env
MLstmt_value_env_evallet stmt_value_env_normC = SimpleMacroC `stmt_value_env_normC` env(StmtValueNorm(p)) p ``stmt_value_env stmt_value_norm stmt_value_cases`` ;; let stmt_value_env_excC = SimpleMacroC `stmt_value_env_excC` env(StmtValueExc(en;ex)) en ``stmt_value_env stmt_value_exc stmt_value_cases`` ;; let stmt_value_envC = FirstC [stmt_value_env_normC; stmt_value_env_excC] ;; add_AbReduce_conv `stmt_value_env` stmt_value_envC ;;
DISPstmt_value_is_norm_dfIsNorm( < v:stmt_value:* > )== IsNorm( < v > )
ABSstmt_value_is_normIsNorm(v) == case v of StmtValueExc(en,ex) - > ff | StmtValueNorm(en) - > tt
THMstmt_value_is_norm_wff:Atom . s:Spec. v:StmtValue(f;s). IsNorm(v)
THMstmt_value_is_norm_wf_barf:Atom . s:Spec. v:bar(StmtValue(f;s)). IsNorm(v) bar()
THMstmt_value_is_norm_wf_bar2f:Atom . s:Spec. v:bar(StmtValue(f;s)). v in! StmtValue(f;s) IsNorm(v)
MLstmt_value_is_norm_evallet stmt_value_norm_normC = SimpleMacroC `stmt_value_norm_norm` IsNorm(StmtValueNorm(en)) tt ``stmt_value_is_norm stmt_value_norm stmt_value_cases``;; let stmt_value_norm_excC = SimpleMacroC `stmt_value_norm_exc` IsNorm(StmtValueExc(en;ex)) ff ``stmt_value_is_norm stmt_value_exc stmt_value_cases``;; let stmt_value_is_normC = FirstC [stmt_value_norm_excC; stmt_value_norm_normC] ;; add_AbReduce_conv `stmt_value_is_norm` stmt_value_is_normC ;;
DISPstmt_dfStmt( < f:f:* > ; < s:s:* > )== Stmt Stmt== Stmt
ABSstmtStmt == Env bar(StmtValue(f;s))
MLstmt_softadd_soft_abs ``stmt``;;
DISPskip_dfskip== skip
ABSskipskip == en.StmtValueNorm(en)
THMskip_wff:Atom . s:Spec. skip Stmt
DISPseq_df{[SOFT} < st1:st1:* > ; {\\} < st2:st2:* > {]}== < st1 > ; < st2 >
ABSseqst1; st2 == en.case st1 en of StmtValueExc(en',ex) - > st1 en | StmtValueNorm(en') - > st2 en'
THMseq_wff:Atom . s:Spec. st1,st2:Stmt. st1; st2 Stmt
DISPthrow_dfthrow( < e:e:* > )== throw( < e > )
ABSthrowthrow(e) == en.case e en of Exc(en',ex) - > StmtValueExc(en';ex) | Make(en',v) - > StmtValueExc(en';v)
THMthrow_wff:Atom . s:Spec. e:Exp(Exception). throw(e) Stmt
DISPif_dfif( < b:b:* > ; < c:c:* > ; < d:d:* > ; < f:f:* > ; < s:s:* > )== if( < b > ; < c > ; < d > ; < f > ; < s > )
ABSifif(b;c;d;f;s) == en.case b en of Exc(en',ex) - > StmtValueExc(en';ex) | Make(en',bv) - > case get_j_cor(bv;f;s) of Jc - > StmtValueExc(en';JConst( " NilPointerE xception " ;Exception)) | Jac(bav) - > if bav then c en' else d en' fi
THMif_wff:Atom . s:Spec. b:Exp(boolean). c,d:Stmt. if(b;c;d;f;s) Stmt
DISPvar_assig_df( < v:atom:* > : < t:jtype:* > ) := < e:exp:* > == ( < v > : < t > ) := < e >
ABSvar_assig(v:t) := e == en.case e en of Exc(en',exc) - > StmtValueExc(en';exc) | Make(en',o) - > StmtValueNorm(en'{(v:t) - > o})
THMvar_assig_wff:Atom . s:Spec. v:Atom. t:Type. e:Exp(t). (v:t) := e Stmt

the other theories