From: Ferruccio Guidi Date: Thu, 26 Jul 2012 15:01:09 +0000 (+0000) Subject: polarized binders introduced in basic_2 X-Git-Tag: make_still_working~1594 X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=commitdiff_plain;h=335ae5716c5abbdbaaa4f115c56f7fdcc91320a4;p=helm.git polarized binders introduced in basic_2 --- diff --git a/helm/www/lambda_delta/apps_2.html b/helm/www/lambda_delta/apps_2.html index a297d9835..6ba6a5517 100644 --- a/helm/www/lambda_delta/apps_2.html +++ b/helm/www/lambda_delta/apps_2.html @@ -32,7 +32,7 @@
Here is a numerical acount of the specification's contents and its timeline.
-
categoryobjects




sizesfiles5bytes13122

propositionstheorems4lemmas1total5
conceptsdeclared3defined10total13
+
categoryobjects




sizesfiles5bytes13143

propositionstheorems4lemmas1total5
conceptsdeclared3defined10total13
@@ -57,6 +57,6 @@
The source files are grouped in directories, one for each component.
-
[Spacer]

[Valid XHTML 1.1][Valid CSS level 2][Generated from XML via XSL][PNG used here][Viewable with any browser]

Last update: 2012-07-13T18:42:36+02:00
+
[Spacer]

[Valid XHTML 1.1][Valid CSS level 2][Generated from XML via XSL][PNG used here][Viewable with any browser]

Last update: 2012-07-26T16:56:08+02:00
diff --git a/helm/www/lambda_delta/basic_2.html b/helm/www/lambda_delta/basic_2.html index c4501f60b..413f1c44b 100644 --- a/helm/www/lambda_delta/basic_2.html +++ b/helm/www/lambda_delta/basic_2.html @@ -18,7 +18,7 @@
This is a summary of the "block structure" of the System's syntactic items and reductions.
-
domainblockleaderapplicator (with →θ)*reduction→ζ *reference *
{X | Γ ⊢ X : W}typed abstraction **Γ ⊢ λWⓐV→βno#i

typed declaration ***Γ ⊢ pλWnonono$p

native type annotation *Γ ⊢ ⓝWnonoyesno
{X | Γ ⊢ X = V}local abbreviation **Γ ⊢ δVnolocal →δyes#i

global abbreviation ***Γ ⊢ pδVnoglobal →δno$p
nosort ****Γ ⊢ ⋆knononono
+
domainblockleaderapplicator (with →θ)*reduction→ζ *reference *
{X | Γ ⊢ X : W}local typed abstraction *Γ ⊢ +λWⓐV→βno#i

local typed declaration **Γ ⊢ -λWⓐV→βno#i

global typed declaration ***Γ ⊢ pλWnonono$p

native type annotation *Γ ⊢ ⓝWnonoyesno
{X | Γ ⊢ X = V}local abbreviation *Γ ⊢ +δVnolocal →δyes#i

local definition **Γ ⊢ -δVnolocal →δno#i

global definition ***Γ ⊢ pδVnoglobal →δno$p
nosort ****Γ ⊢ ⋆knononono
* In terms only. ** In terms and local environments only. *** In global environments only. @@ -29,7 +29,7 @@
Here is a numerical acount of the specification's contents and its timeline.
-
categoryobjects




sizesfiles153bytes580977

propositionstheorems60lemmas669total729
conceptsdeclared37defined50total87
+
categoryobjects




sizesfiles169bytes630979

propositionstheorems60lemmas715total775
conceptsdeclared38defined54total92
+
-
componentplanefiles







equivalencecontext-sensitive equivalencelcpcs ( ? ⊢ ⬌* ? )lcpcs_aaalcpcs_lcprslcpcs_lcpcs






cpcs ( ? ⊢ ? ⬌* ? )cpcs_ltpsscpcs_deliftcpcs_ltprcpcs_cprscpcs_cpcs


conversioncontext-sensitive conversionlcpc ( ? ⊢ ⬌ ? )lcpc_lcpc








cpc ( ? ⊢ ? ⬌ ? )cpc_cpc






computationweakly normalizing computationcpe ( ? ⊢ ➡* 𝐍⦃?⦄ )cpe_cpe







strongly normalizing computationcsn_vector ( ? ⊢ ⬇* ? )csn_cpr_vectorcsn_tstc_vectorcsn_aaa






csn ( ? ⊢ ⬇* ? )csn_alt ( ? ⊢ ⬇⬇* ? )csn_liftcsn_cprcsn_lcpr




context-sensitive computationlcprs ( ? ⊢ ➡* ? )lcprs_aaalcprs_cprslcprs_lcprs






cprs (? ⊢ ? ➡* ?)cprs_liftcprs_deliftcprs_ltprcprs_lcprcprs_cprscprs_lcprscprs_tstccprs_tstc_vector

local env. ref. for abstract candidates of reducibilitylsubc ( ? ⊑[?] ? )lsubc_ldroplsubc_ldropslsubc_lsuba





support for abstract computation propertiesacpacp_cr ( ⦃?,?⦄ ϵ[?] 〚?〛 )acp_aaa





reducibilitycontext-sensitive normal formscnf ( ? ⊢ 𝐍⦃?⦄ )cnf_lift







context-sensitive reductionlcpr ( ? ⊢ ➡ ? )lcpr_aaalcpr_cprlcpr_lcpr






cpr ( ? ⊢ ? ➡ ? )cpr_liftcpr_ltpsscpr_deliftcpr_ltprcpr_cpr



context-free normal formstwhnf ( 𝐖𝐇𝐍⦃?⦄ )tnf ( 𝐍⦃?⦄ )tnf_tif






context-free reductionltpr ( ? ➡ ? )ltpr_ldropltpr_tpsltpr_ltpssltpr_aaaltpr_ltpr




tpr ( ? ➡ ? )tpr_lifttpr_tpsstpr_delifttpr_tpr




context-free reducible formstrf ( 𝐑⦃?⦄ )tif ( 𝐈⦃?⦄ )






unwindstratified unwindsstas ( ⦃?,?⦄ ⊢ ? •*[?] ? )sstas_liftsstas_ltpsssstas_sstas




static typingstratified static type assignmentssta ( ⦃?,?⦄ ⊢ ? •[?,?] ? )ssta_liftssta_ltpssssta_ssta





local env. ref. for atomic arity assignmentlsuba ( ? ⁝⊑ ? )lsuba_ldroplsuba_aaalsuba_lsuba





atomic arity assignmentaaa ( ? ⊢ ? ⁝ ? )aaa_liftaaa_liftsaaa_ltpssaaa_aaa




parametersshsd






unfoldbasic local env. thinningthin ( ? ▼*[?,?] ≡ ? )thin_ldropthin_delift






inverse basic term relocationdelift ( ? ⊢ ? ▼*[?,?] ≡ ? )delift_alt ( ? ⊢ ? ▼▼*[?,?] ≡ ? )delift_liftdelift_tpssdelift_ltpssdelift_delift



partial unfoldltpss ( ? ▶*[?,?] ? )ltpss_ldropltpss_tpsltpss_tpssltpss_ltpss





tpss ( ? ⊢ ? ▶*[?,?] ? )tpss_alt ( ? ⊢ ? ▶▶*[?,?] ? )tpss_lifttpss_tpss





generic local env. slicingldrops ( ⇩*[?] ? ≡ ? )ldrops_ldropldrops_ldrops






generic term relocationlifts_vector ( ⇧*[?] ? ≡ ? )lifts_lift_vector








lifts ( ⇧*[?] ? ≡ ? )lifts_liftlifts_lifts






support for generic relocationgr2 ( @ [?] ? ≡ ? )gr2_plus ( ? + ? )gr2_minus ( ? ▭ ? ≡ ? )gr2_gr2




substitutionparallel substitutiontps ( ? ⊢ ? ▶[?,?] ? )tps_lifttps_tps






global env. slicinggdrop ( ⇩[?] ? ≡ ? )gdrop_gdrop







basic local env. slicingldrop ( ⇩[?,?] ? ≡ ? )ldrop_ldropldrop_sfr






local env. ref. for substitutionlsubs ( ? ≼[?,?] ? )lsubs_lsubslsubs_sfr ( ≽[?,?] ? )






basic term relocationlift_vector ( ⇧[?,?] ? ≡ ? )lift_lift_vector








lift ( ⇧[?,?] ? ≡ ? )lift_lift






grammarsame head term formtshf ( ? ≈ ? )tshf_tshf







same top term constructortstc ( ? ≃ ? )tstc_tstctstc_vector






closurescl_shift ( ? @@ ? )cl_weight ( #[?,?] )







internal syntaxgenv









lenvlenv_weight ( #[?] )lenv_length ( |?| )







termterm_weight ( #[?] )term_simple ( 𝐒⦃?⦄ )term_vector






item








external syntaxaarity







+
componentplanefiles







dynamic typingstratified native validitysnv ( ⦃?,?⦄ ⊩ ? :[?] )snv_liftsnv_aaa





equivalencecontext-sensitive equivalencelcpcs ( ? ⊢ ⬌* ? )lcpcs_aaalcpcs_lcprslcpcs_lcpcs






cpcs ( ? ⊢ ? ⬌* ? )cpcs_ltpsscpcs_deliftcpcs_ltprcpcs_cprscpcs_cpcs


conversioncontext-sensitive conversionlcpc ( ? ⊢ ⬌ ? )lcpc_lcpc








cpc ( ? ⊢ ? ⬌ ? )cpc_cpc






computationextended computationxprs ( ⦃?,?⦄ ⊢ ? ➸*[?] ? )xprs_liftxprs_aaaxprs_cprs





weakly normalizing computationcpe ( ? ⊢ ➡* 𝐍⦃?⦄ )cpe_cpe







strongly normalizing computationcsn_vector ( ? ⊢ ⬊* ? )csn_cpr_vectorcsn_tstc_vectorcsn_aaa






csn ( ? ⊢ ⬊* ? )csn_alt ( ? ⊢ ⬊⬊* ? )csn_liftcsn_cprcsn_lcpr




context-sensitive computationlcprs ( ? ⊢ ➡* ? )lcprs_aaalcprs_cprslcprs_lcprs






cprs (? ⊢ ? ➡* ?)cprs_liftcprs_deliftcprs_ltprcprs_lcprcprs_cprscprs_lcprscprs_tstccprs_tstc_vector

local env. ref. for abstract candidates of reducibilitylsubc ( ? ⊑[?] ? )lsubc_ldroplsubc_ldropslsubc_lsuba





support for abstract computation propertiesacpacp_cr ( ⦃?,?⦄ ϵ[?] 〚?〛 )acp_aaa





reducibilityextended reductionxpr ( ⦃?,?⦄ ⊢ ? ➸[?] ? )xpr_liftxpr_aaa






context-sensitive normal formscnf ( ? ⊢ 𝐍⦃?⦄ )cnf_lift


cnf_cif



context-sensitive reductionlcpr ( ? ⊢ ➡ ? )lcpr_aaalcpr_cprlcpr_lcpr






cpr ( ? ⊢ ? ➡ ? )cpr_liftcpr_ltpsscpr_deliftcpr_ltprcpr_cpr



context-sensitive reducible formscrf ( ? ⊢ 𝐑⦃?⦄ )crf_appendcif ( ? ⊢ 𝐈⦃?⦄ )cif_append





context-free normal formsthnf ( 𝐇𝐍⦃?⦄ )








context-free reductionltpr ( ? ➡ ? )ltpr_ldropltpr_tpsltpr_ltpssltpr_aaaltpr_ltpr




tpr ( ? ➡ ? )tpr_lifttpr_tpsstpr_delifttpr_tpr



unwind









static typinglocal env. ref. for stratified static type assignmentlsubss ( ? ⁝⊑ ? )lsubss_ldroplsubss_sstalsubss_lsubss





stratified static type assignmentssta ( ⦃?,?⦄ ⊢ ? •[?,?] ? )ssta_liftssta_ltpssssta_aaassta_ssta




local env. ref. for atomic arity assignmentlsuba ( ? ⁝⊑ ? )lsuba_ldroplsuba_aaalsuba_lsuba





atomic arity assignmentaaa ( ? ⊢ ? ⁝ ? )aaa_liftaaa_liftsaaa_ltpssaaa_aaa




parametersshsd






unfoldbasic local env. thinningthin ( ? ▼*[?,?] ≡ ? )thin_ldropthin_delift






inverse basic term relocationdelift ( ? ⊢ ? ▼*[?,?] ≡ ? )delift_alt ( ? ⊢ ? ▼▼*[?,?] ≡ ? )delift_liftdelift_tpssdelift_ltpssdelift_delift



partial unfoldltpss ( ? ▶*[?,?] ? )ltpss_ldropltpss_tpsltpss_tpssltpss_ltpss





tpss ( ? ⊢ ? ▶*[?,?] ? )tpss_alt ( ? ⊢ ? ▶▶*[?,?] ? )tpss_lifttpss_tpss





generic local env. slicingldrops ( ⇩*[?] ? ≡ ? )ldrops_ldropldrops_ldrops






generic term relocationlifts_vector ( ⇧*[?] ? ≡ ? )lifts_lift_vector








lifts ( ⇧*[?] ? ≡ ? )lifts_liftlifts_lifts






support for generic relocationgr2 ( @⦃?,?⦄ ≡ ? )gr2_plus ( ? + ? )gr2_minus ( ? ▭ ? ≡ ? )gr2_gr2




substitutionparallel substitutiontps ( ? ⊢ ? ▶[?,?] ? )tps_lifttps_tps






global env. slicinggdrop ( ⇩[?] ? ≡ ? )gdrop_gdrop







basic local env. slicingldrop ( ⇩[?,?] ? ≡ ? )ldrop_appendldrop_sfrldrop_ldrop





local env. ref. for substitutionlsubs ( ? ≼[?,?] ? )lsubs_lsubslsubs_sfr ( ≽[?,?] ? )






basic term relocationlift_vector ( ⇧[?,?] ? ≡ ? )lift_lift_vector








lift ( ⇧[?,?] ? ≡ ? )lift_lift






grammarsame head term formtshf ( ? ≈ ? )tshf_tshf







same top term constructortstc ( ? ≃ ? )tstc_tstctstc_vector






closurescl_shift ( ? @@ ? )cl_weight ( #{?,?} )







internal syntaxgenv









lenvlenv_weight ( #{?} )lenv_length ( |?| )lenv_append ( ? @@ ? )






termterm_weight ( #{?} )term_simple ( 𝐒⦃?⦄ )term_vector






item








external syntaxaarity







Physical Structure of the Specification
The source files are grouped in directories, one for each component.
-
[Spacer]

[Valid XHTML 1.1][Valid CSS level 2][Generated from XML via XSL][PNG used here][Viewable with any browser]

Last update: 2012-07-13T18:55:07+02:00
+
[Spacer]

[Valid XHTML 1.1][Valid CSS level 2][Generated from XML via XSL][PNG used here][Viewable with any browser]

Last update: 2012-07-26T16:59:06+02:00
diff --git a/helm/www/lambda_delta/web/home/basic_2.ldw.xml b/helm/www/lambda_delta/web/home/basic_2.ldw.xml index ce35fd342..51995e4fe 100644 --- a/helm/www/lambda_delta/web/home/basic_2.ldw.xml +++ b/helm/www/lambda_delta/web/home/basic_2.ldw.xml @@ -33,6 +33,9 @@ Extended context-sensitive strong normalization for simply typed terms. + + Polarized binders to control ζ reduction. + Context-sensitive subject equivalence for atomic arity assignment diff --git a/helm/www/lambda_delta/web/home/basic_2_blk.tbl b/helm/www/lambda_delta/web/home/basic_2_blk.tbl index 8c4ee4827..ed50adf79 100644 --- a/helm/www/lambda_delta/web/home/basic_2_blk.tbl +++ b/helm/www/lambda_delta/web/home/basic_2_blk.tbl @@ -9,30 +9,38 @@ table { } ] [ { "{X | Γ ⊢ X : W}" * } { class "wine" [ - [ "typed abstraction **" ] [ "Γ ⊢ λW" ] + [ "local typed abstraction *" ] [ "Γ ⊢ +λW" ] [ "ⓐV" ] [ "→β" ] [ "no" ] [ "#i" ] ] class "magenta" [ - [ "typed declaration ***" ] [ "Γ ⊢ pλW" ] - [ "no" ] [ "no" ] [ "no" ] [ "$p" ] + [ "local typed declaration **" ] [ "Γ ⊢ -λW" ] + [ "ⓐV" ] [ "→β" ] [ "no" ] [ "#i" ] ] class "prune" [ + [ "global typed declaration ***" ] [ "Γ ⊢ pλW" ] + [ "no" ] [ "no" ] [ "no" ] [ "$p" ] + ] + class "blue" [ [ "native type annotation *" ] [ "Γ ⊢ ⓝW" ] [ "no" ] [ "no" ] [ "yes" ] [ "no" ] ] } ] [ { "{X | Γ ⊢ X = V}" * } { - class "blue" [ - [ "local abbreviation **" ] [ "Γ ⊢ δV" ] + class "sky" [ + [ "local abbreviation *" ] [ "Γ ⊢ +δV" ] [ "no" ] [ "local →δ" ] [ "yes" ] [ "#i" ] ] - class "sky" [ - [ "global abbreviation ***" ] [ "Γ ⊢ pδV" ] + class "cyan" [ + [ "local definition **" ] [ "Γ ⊢ -δV" ] + [ "no" ] [ "local →δ" ] [ "no" ] [ "#i" ] + ] + class "water" [ + [ "global definition ***" ] [ "Γ ⊢ pδV" ] [ "no" ] [ "global →δ" ] [ "no" ] [ "$p" ] ] } ] [ { "no" * } { - class "cyan" [ + class "green" [ [ "sort ****" ] [ "Γ ⊢ ⋆k" ] [ "no" ] [ "no" ] [ "no" ] [ "no" ] ] @@ -42,4 +50,3 @@ table { class "text" { 0 } { 2 * } class "plane" { 1 } - diff --git a/helm/www/lambda_delta/web/home/basic_2_src.tbl b/helm/www/lambda_delta/web/home/basic_2_src.tbl index 5881202bf..2e58de4dc 100644 --- a/helm/www/lambda_delta/web/home/basic_2_src.tbl +++ b/helm/www/lambda_delta/web/home/basic_2_src.tbl @@ -5,7 +5,7 @@ table { [ { "component" * } { [ { "plane" * } { [ "files" * ] - } + } ] } ] @@ -13,123 +13,147 @@ table { class "wine" [ { "examples" * } { [ { "" * } { - [ "" * ] - } + [ "" * ] + } ] } ] class "magenta" [ { "higher order dynamic typing" * } { [ { "higher order native type assignment" * } { - [ "ntas ( ⦃?,?⦄ ⊢ ? :* ? )" "nta_lift" * ] - } + [ "ntas ( ⦃?,?⦄ ⊢ ? :* ? )" "nta_lift" * ] + } ] } - ] + ] +*) class "prune" [ { "dynamic typing" * } { +(* [ { "local env. ref. for native type assignment" * } { - [ "lsubn ( ? ⊢ ? :⊑ ? )" "lsubn_ldrop" "lsubn_cpcs" "lsubn_nta" * ] - } + [ "lsubn ( ? ⊢ ? :⊑ ? )" "lsubn_ldrop" "lsubn_cpcs" "lsubn_nta" * ] + } ] [ { "native type assignment" * } { - [ "nta ( ⦃?,?⦄ ⊢ ? : ? )" "nta_alt ( ⦃?,?⦄ ⊢ ? :: ? )" "nta_lift" "nta_ltpss" "nta_thin" "nta_aaa" "nta_sta" "nta_ltpr" "nta_nta" * ] - } + [ "nta ( ⦃?,?⦄ ⊢ ? : ? )" "nta_alt ( ⦃?,?⦄ ⊢ ? :: ? )" "nta_lift" "nta_ltpss" "nta_thin" "nta_aaa" "nta_sta" "nta_ltpr" "nta_nta" * ] + } + ] +*) + [ { "stratified native validity" * } { + [ "snv ( ⦃?,?⦄ ⊩ ? :[?] )" "snv_lift" "snv_aaa" * ] + } ] } ] -*) class "blue" [ { "equivalence" * } { [ { "context-sensitive equivalence" * } { - [ "lcpcs ( ? ⊢ ⬌* ? )" "lcpcs_aaa" "lcpcs_lcprs" "lcpcs_lcpcs" * ] - [ "cpcs ( ? ⊢ ? ⬌* ? )" "cpcs_ltpss" "cpcs_delift" "cpcs_ltpr" "cpcs_cprs" "cpcs_cpcs" * ] - } + [ "lcpcs ( ? ⊢ ⬌* ? )" "lcpcs_aaa" "lcpcs_lcprs" "lcpcs_lcpcs" * ] + [ "cpcs ( ? ⊢ ? ⬌* ? )" "cpcs_ltpss" "cpcs_delift" "cpcs_ltpr" "cpcs_cprs" "cpcs_cpcs" * ] + } ] } ] class "sky" [ { "conversion" * } { [ { "context-sensitive conversion" * } { - [ "lcpc ( ? ⊢ ⬌ ? )" "lcpc_lcpc" * ] - [ "cpc ( ? ⊢ ? ⬌ ? )" "cpc_cpc" * ] - } + [ "lcpc ( ? ⊢ ⬌ ? )" "lcpc_lcpc" * ] + [ "cpc ( ? ⊢ ? ⬌ ? )" "cpc_cpc" * ] + } ] } ] class "cyan" [ { "computation" * } { + [ { "extended computation" * } { + [ "xprs ( ⦃?,?⦄ ⊢ ? ➸*[?] ? )" "xprs_lift" "xprs_aaa" "xprs_cprs" * ] + } + ] [ { "weakly normalizing computation" * } { - [ "cpe ( ? ⊢ ➡* 𝐍⦃?⦄ )" "cpe_cpe" * ] - } - ] - [ { "strongly normalizing computation" * } { - [ "csn_vector ( ? ⊢ ⬇* ? )" "csn_cpr_vector" "csn_tstc_vector" "csn_aaa" * ] - [ "csn ( ? ⊢ ⬇* ? )" "csn_alt ( ? ⊢ ⬇⬇* ? )" "csn_lift" "csn_cpr" "csn_lcpr" * ] - } + [ "cpe ( ? ⊢ ➡* 𝐍⦃?⦄ )" "cpe_cpe" * ] + } + ] + [ { "strongly normalizing computation" * } { + [ "csn_vector ( ? ⊢ ⬊* ? )" "csn_cpr_vector" "csn_tstc_vector" "csn_aaa" * ] + [ "csn ( ? ⊢ ⬊* ? )" "csn_alt ( ? ⊢ ⬊⬊* ? )" "csn_lift" "csn_cpr" "csn_lcpr" * ] + } ] [ { "context-sensitive computation" * } { - [ "lcprs ( ? ⊢ ➡* ? )" "lcprs_aaa" "lcprs_cprs" "lcprs_lcprs" * ] - [ "cprs (? ⊢ ? ➡* ?)" "cprs_lift" "cprs_delift" "cprs_ltpr" "cprs_lcpr" "cprs_cprs" "cprs_lcprs" "cprs_tstc" "cprs_tstc_vector" * ] - } + [ "lcprs ( ? ⊢ ➡* ? )" "lcprs_aaa" "lcprs_cprs" "lcprs_lcprs" * ] + [ "cprs (? ⊢ ? ➡* ?)" "cprs_lift" "cprs_delift" "cprs_ltpr" "cprs_lcpr" "cprs_cprs" "cprs_lcprs" "cprs_tstc" "cprs_tstc_vector" * ] + } ] [ { "local env. ref. for abstract candidates of reducibility" * } { - [ "lsubc ( ? ⊑[?] ? )" "lsubc_ldrop" "lsubc_ldrops" "lsubc_lsuba" * ] - } + [ "lsubc ( ? ⊑[?] ? )" "lsubc_ldrop" "lsubc_ldrops" "lsubc_lsuba" * ] + } ] [ { "support for abstract computation properties" * } { - [ "acp" "acp_cr ( ⦃?,?⦄ ϵ[?] 〚?〛 )" "acp_aaa" * ] + [ "acp" "acp_cr ( ⦃?,?⦄ ϵ[?] 〚?〛 )" "acp_aaa" * ] } - ] + ] } ] class "water" [ { "reducibility" * } { + [ { "extended reduction" * } { + [ "xpr ( ⦃?,?⦄ ⊢ ? ➸[?] ? )" "xpr_lift" "xpr_aaa" * ] + } + ] [ { "context-sensitive normal forms" * } { - [ "cnf ( ? ⊢ 𝐍⦃?⦄ )" "cnf_lift" * ] + [ "cnf ( ? ⊢ 𝐍⦃?⦄ )" "cnf_lift" *"cnf_cif" * ] + } + ] + [ { "context-sensitive reduction" * } { + [ "lcpr ( ? ⊢ ➡ ? )" "lcpr_aaa" "lcpr_cpr" "lcpr_lcpr" * ] + [ "cpr ( ? ⊢ ? ➡ ? )" "cpr_lift" "cpr_ltpss" "cpr_delift" "cpr_ltpr" "cpr_cpr" * ] + } + ] + [ { "context-sensitive reducible forms" * } { + [ "crf ( ? ⊢ 𝐑⦃?⦄ )" "crf_append" "cif ( ? ⊢ 𝐈⦃?⦄ )" "cif_append" * ] } - ] - [ { "context-sensitive reduction" * } { - [ "lcpr ( ? ⊢ ➡ ? )" "lcpr_aaa" "lcpr_cpr" "lcpr_lcpr" * ] - [ "cpr ( ? ⊢ ? ➡ ? )" "cpr_lift" "cpr_ltpss" "cpr_delift" "cpr_ltpr" "cpr_cpr" * ] - } ] [ { "context-free normal forms" * } { - [ "twhnf ( 𝐖𝐇𝐍⦃?⦄ )" "tnf ( 𝐍⦃?⦄ )" "tnf_tif" * ] + [ "thnf ( 𝐇𝐍⦃?⦄ )" * ] } - ] + ] [ { "context-free reduction" * } { - [ "ltpr ( ? ➡ ? )" "ltpr_ldrop" "ltpr_tps" "ltpr_ltpss" "ltpr_aaa" "ltpr_ltpr" * ] - [ "tpr ( ? ➡ ? )" "tpr_lift" "tpr_tpss" "tpr_delift" "tpr_tpr" * ] - } - ] - [ { "context-free reducible forms" * } { - [ "trf ( 𝐑⦃?⦄ )" "tif ( 𝐈⦃?⦄ )" * ] + [ "ltpr ( ? ➡ ? )" "ltpr_ldrop" "ltpr_tps" "ltpr_ltpss" "ltpr_aaa" "ltpr_ltpr" * ] + [ "tpr ( ? ➡ ? )" "tpr_lift" "tpr_tpss" "tpr_delift" "tpr_tpr" * ] } - ] + ] } ] class "green" [ { "unwind" * } { - [ { "stratified unwind" * } { - [ "sstas ( ⦃?,?⦄ ⊢ ? •*[?] ? )" "sstas_lift" "sstas_ltpss" "sstas_sstas" * ] + [ { "" * } { + [ "" * ] } - ] + ] } ] +(* + [ { "stratified unwind" * } { + [ "sstas ( ⦃?,?⦄ ⊢ ? •*[?] ? )" "sstas_lift" "sstas_ltpss" "sstas_sstas" * ] + } + ] +*) class "grass" [ { "static typing" * } { + [ { "local env. ref. for stratified static type assignment" * } { + [ "lsubss ( ? ⁝⊑ ? )" "lsubss_ldrop" "lsubss_ssta" "lsubss_lsubss" * ] + } + ] [ { "stratified static type assignment" * } { - [ "ssta ( ⦃?,?⦄ ⊢ ? •[?,?] ? )" "ssta_lift" "ssta_ltpss" "ssta_ssta" * ] + [ "ssta ( ⦃?,?⦄ ⊢ ? •[?,?] ? )" "ssta_lift" "ssta_ltpss" "ssta_aaa" "ssta_ssta" * ] } - ] + ] [ { "local env. ref. for atomic arity assignment" * } { - [ "lsuba ( ? ⁝⊑ ? )" "lsuba_ldrop" "lsuba_aaa" "lsuba_lsuba" * ] - } + [ "lsuba ( ? ⁝⊑ ? )" "lsuba_ldrop" "lsuba_aaa" "lsuba_lsuba" * ] + } ] [ { "atomic arity assignment" * } { - [ "aaa ( ? ⊢ ? ⁝ ? )" "aaa_lift" "aaa_lifts" "aaa_ltpss" "aaa_aaa" * ] - } + [ "aaa ( ? ⊢ ? ⁝ ? )" "aaa_lift" "aaa_lifts" "aaa_ltpss" "aaa_aaa" * ] + } ] [ { "parameters" * } { [ "sh" "sd" * ] @@ -140,53 +164,53 @@ table { class "yellow" [ { "unfold" * } { [ { "basic local env. thinning" * } { - [ "thin ( ? ▼*[?,?] ≡ ? )" "thin_ldrop" "thin_delift" * ] + [ "thin ( ? ▼*[?,?] ≡ ? )" "thin_ldrop" "thin_delift" * ] } - ] - [ { "inverse basic term relocation" * } { - [ "delift ( ? ⊢ ? ▼*[?,?] ≡ ? )" "delift_alt ( ? ⊢ ? ▼▼*[?,?] ≡ ? )" "delift_lift" "delift_tpss" "delift_ltpss" "delift_delift" * ] + ] + [ { "inverse basic term relocation" * } { + [ "delift ( ? ⊢ ? ▼*[?,?] ≡ ? )" "delift_alt ( ? ⊢ ? ▼▼*[?,?] ≡ ? )" "delift_lift" "delift_tpss" "delift_ltpss" "delift_delift" * ] } - ] - [ { "partial unfold" * } { + ] + [ { "partial unfold" * } { [ "ltpss ( ? ▶*[?,?] ? )" "ltpss_ldrop" "ltpss_tps" "ltpss_tpss" "ltpss_ltpss" * ] - [ "tpss ( ? ⊢ ? ▶*[?,?] ? )" "tpss_alt ( ? ⊢ ? ▶▶*[?,?] ? )" "tpss_lift" "tpss_tpss" * ] + [ "tpss ( ? ⊢ ? ▶*[?,?] ? )" "tpss_alt ( ? ⊢ ? ▶▶*[?,?] ? )" "tpss_lift" "tpss_tpss" * ] } - ] - [ { "generic local env. slicing" * } { - [ "ldrops ( ⇩*[?] ? ≡ ? )" "ldrops_ldrop" "ldrops_ldrops" * ] + ] + [ { "generic local env. slicing" * } { + [ "ldrops ( ⇩*[?] ? ≡ ? )" "ldrops_ldrop" "ldrops_ldrops" * ] } - ] - [ { "generic term relocation" * } { - [ "lifts_vector ( ⇧*[?] ? ≡ ? )" "lifts_lift_vector" * ] - [ "lifts ( ⇧*[?] ? ≡ ? )" "lifts_lift" "lifts_lifts" * ] + ] + [ { "generic term relocation" * } { + [ "lifts_vector ( ⇧*[?] ? ≡ ? )" "lifts_lift_vector" * ] + [ "lifts ( ⇧*[?] ? ≡ ? )" "lifts_lift" "lifts_lifts" * ] } - ] - [ { "support for generic relocation" * } { - [ "gr2 ( @ [?] ? ≡ ? )" "gr2_plus ( ? + ? )" "gr2_minus ( ? ▭ ? ≡ ? )" "gr2_gr2" * ] + ] + [ { "support for generic relocation" * } { + [ "gr2 ( @⦃?,?⦄ ≡ ? )" "gr2_plus ( ? + ? )" "gr2_minus ( ? ▭ ? ≡ ? )" "gr2_gr2" * ] } - ] + ] } ] class "orange" [ { "substitution" * } { [ { "parallel substitution" * } { - [ "tps ( ? ⊢ ? ▶[?,?] ? )" "tps_lift" "tps_tps" * ] + [ "tps ( ? ⊢ ? ▶[?,?] ? )" "tps_lift" "tps_tps" * ] } - ] - [ { "global env. slicing" * } { + ] + [ { "global env. slicing" * } { [ "gdrop ( ⇩[?] ? ≡ ? )" "gdrop_gdrop" * ] } - ] - [ { "basic local env. slicing" * } { - [ "ldrop ( ⇩[?,?] ? ≡ ? )" "ldrop_ldrop" "ldrop_sfr" * ] + ] + [ { "basic local env. slicing" * } { + [ "ldrop ( ⇩[?,?] ? ≡ ? )" "ldrop_append" "ldrop_sfr" "ldrop_ldrop" * ] } - ] + ] [ { "local env. ref. for substitution" * } { [ "lsubs ( ? ≼[?,?] ? )" "lsubs_lsubs" "lsubs_sfr ( ≽[?,?] ? )" * ] } - ] + ] [ { "basic term relocation" * } { - [ "lift_vector ( ⇧[?,?] ? ≡ ? )" "lift_lift_vector" * ] + [ "lift_vector ( ⇧[?,?] ? ≡ ? )" "lift_lift_vector" * ] [ "lift ( ⇧[?,?] ? ≡ ? )" "lift_lift" * ] } ] @@ -194,29 +218,29 @@ table { ] class "red" [ { "grammar" * } { - [ { "same head term form" * } { + [ { "same head term form" * } { [ "tshf ( ? ≈ ? )" "tshf_tshf" * ] } - ] - [ { "same top term constructor" * } { + ] + [ { "same top term constructor" * } { [ "tstc ( ? ≃ ? )" "tstc_tstc" "tstc_vector" * ] } - ] - [ { "closures" * } { - [ "cl_shift ( ? @@ ? )" "cl_weight ( #[?,?] )" * ] + ] + [ { "closures" * } { + [ "cl_shift ( ? @@ ? )" "cl_weight ( #{?,?} )" * ] } - ] + ] [ { "internal syntax" * } { [ "genv" * ] - [ "lenv" "lenv_weight ( #[?] )" "lenv_length ( |?| )" * ] - [ "term" "term_weight ( #[?] )" "term_simple ( 𝐒⦃?⦄ )" "term_vector" * ] - [ "item" * ] - } - ] + [ "lenv" "lenv_weight ( #{?} )" "lenv_length ( |?| )" "lenv_append ( ? @@ ? )" * ] + [ "term" "term_weight ( #{?} )" "term_simple ( 𝐒⦃?⦄ )" "term_vector" * ] + [ "item" * ] + } + ] [ { "external syntax" * } { [ "aarity" * ] - } - ] + } + ] } ] }