+
+
+ +
+
+
+
+
+
+ + home + | ++ news + | ++ specification + | +
+ + |
+
+ + |
+ + documentation + | ++ implementation + | +
+ + |
+
+ foreword + | ++ milestones + | ++ version 2 + | +(background - core - applications) | +
+ + |
+ + version 2 + | ++ helena + | ++ Open Symbolic Notation (OSN) + | +
+ citations + | ++ visibility + | ++ version 1 + | +(background - core) | +(static HELM directory) | ++ version 1 + | ++ library + | +(static LDDL directory) | +
Summary of the Specification
+
+ ![\lambda\delta butterfly [butterfly]](http://lambdadelta.info/images/b4.png)
Here is a numerical account of the specification's contents
and its timeline.
- Nodes are counted according to the "intrinsinc complexity measure"
- [F. Guidi: "Procedural Representation of CIC Proof Terms"
- Journal of Automated Reasoning 44(1-2), Springer (February 2010),
- pp. 53-78].
-
+
-
-
sizes | files | -358 | +177 | characters | -431837 | +179834 | nodes | -1860162 | +938855 |
propositions | theorems | -130 | +49 | lemmas | -1286 | +618 | total | -1416 | +667 |
concepts | declared | -54 | +24 | defined | -89 | +42 | total | -143 | +66 |
Stage "B"
- -
+
- - In progress. + Ongoing. Context-sensitive subject equivalence for native type assignment.
- + 2017 January 17. + Confluence for parallel r-transition on referred entries of local environments. + +
- + 2016 September 15. + Confluence for context-sensitive parallel r-transition on terms. + +
- + 2016 April 16. + Grammatical component reconstructed: + grammar, relocation, s_transition, s_computation, static + (anniversary milestone). + +
- + 2016 March 25. + Relocation with reference transforming maps (rtmap). + +
- + 2015 October 9. + λδ version 2A2 is started. + +
- + 2015 August 27. + λδ version 2A1 appears too complex and is dismissed. + +
- + 2014 October 28. + λδ version 2A1 is released. + +
- - 2014 September 9. + 2014 September 9. Iterated static type assignment defined (more elegantly) as a primitive notion.
- - 2014 June 18. + 2014 June 18. Preservation of stratified native validity for context-sensitive computation on terms.
- - 2014 June 9. + 2014 June 9. Strong qrst-normalization for simply typed terms.
- - 2014 April 16. + 2014 April 16. Lazy equivalence on local environments - addded as q-step to rst-computation on closures + added as q-step to rst-computation on closures (anniversary milestone).
- - 2014 January 20. + 2014 January 20. Parametrized slicing of local environments comprises both versions of this operation (one from basic_1, the other used in basic_2 till now).
- - 2013 August 7. + 2013 August 7. Passive support for global environments.
- - 2013 July 27. + 2013 July 27. Reaxiomatized β-reductum as in rt-reduction.
- - 2013 July 20. + 2013 July 20. Context-sensitive strong rt-normalization for simply typed terms.
- - 2013 April 16. + 2013 April 16. Reaxiomatized substitution and reduction commute with respect to subclosure (anniversary milestone).
- - 2013 March 16. + 2013 March 16. Mutual recursive preservation of stratified native validity for rst-computation on closures.
- - 2012 October 16. + 2012 October 16. Confluence for context-free parallel reduction on closures.
- - 2012 July 26. + 2012 July 26. Term binders polarized to control ζ-reduction (not released).
- - 2012 April 16. + 2012 April 16. Context-sensitive subject equivalence for atomic arity assignment (anniversary milestone).
- - 2012 March 15. + 2012 March 15. Context-sensitive strong normalization for simply typed terms.
- - 2012 January 27. + 2012 January 27. Support for abstract candidates of reducibility.
- - 2011 September 21. + 2011 September 21. Confluence for context-sensitive parallel reduction on terms.
- - 2011 September 6. + 2011 September 6. Confluence for context-free parallel reduction on terms.
- - 2011 April 17. - Specification starts. + 2011 April 17. + λδ version 2 is started.
Stage "B"
+ Stage "A": "Weakening the Applicability Condition"
- -
+
Stage "A2": "Extending the Applicability Condition"
+ -
+
-
+
-
+
-
+
-
+
Stage "A1": "Extending the Applicability Condition"
+ -
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Logical Structure of the Specification
- The source files are grouped in planes and components
- according to the following table.
- Notation files covering the whole specification are provided.
- The notation for the relations or functions introduced in each file
- is shown in parentheses (? are placeholders).
+
Logical Structure of the Specification
+
+ ![\lambda\delta butterfly [butterfly]](http://lambdadelta.info/images/b4.png)
This table reports the specification's components and their planes.
-
+
-
-
examples | -terms with special features | -ex_sta_ldec ex_cpr_omega ex_fpbg_refl | -
- - |
-
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- | - | - |
- - |
-
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
dynamic typing | -local env. ref. for stratified native validity | -lsubsv ( ? ⢠? â«Â¡[?,?] ? ) | -lsubsv_lsuba lsubsv_lsubd lsubsv_lstas lsubsv_scpds lsubsv_cpcs lsubsv_snv | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- stratified native validity | -shnv ( �,?⦠⢠? ¡[?,?,?] ) | -
- - |
-
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- snv ( �,?⦠⢠? ¡[?,?] ) | -snv_lift snv_aaa snv_da_lpr snv_lstas snv_lstas_lpr snv_lpr snv_scpes snv_preserve | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
equivalence | -decomposed rt-equivalence | -scpes ( â¦?,?⦠⢠? â¢*â¬*[?,?,?,?] ? ) | -scpes_aaa scpes_cpcs scpes_scpes | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- context-sensitive equivalence | -cpcs ( â¦?,?⦠⢠? â¬* ? ) | -cpcs_aaa cpcs_cprs cpcs_cpcs | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
conversion | -context-sensitive conversion | -cpc ( �,?⦠⢠? ⬠? ) | -cpc_cpc | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
computation | -evaluation for context-sensitive rt-reduction | -cpxe ( â¦?,?⦠⢠â¡*[?,?] ðâ¦?⦠) | -
- - |
-
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- evaluation for context-sensitive reduction | -cpre ( â¦?,?⦠⢠â¡* ðâ¦?⦠) | -cpre_cpre | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- strongly normalizing qrst-computation | -fsb ( ⦥[?,?] �,?,?⦠) | -fsb_alt ( ⦥⦥[?,?] �,?,?⦠) | -fsb_aaa fsb_csx | -
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- strongly normalizing rt-computation | -lcosx ( ? ⢠~â¬*[?,?,?] ? ) | -lcosx_cpx | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- lsx ( ? ⢠â¬*[?,?,?,?] ? ) | -lsx_alt ( ? ⢠â¬â¬*[?,?,?,?] ? ) | -lsx_drop lsx_lpx lsx_lpxs llsx_csx | -
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- csx_vector ( â¦?,?⦠⢠â¬*[?,?] ? ) | -csx_tsts_vector csx_aaa | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- csx ( â¦?,?⦠⢠â¬*[?,?] ? ) | -csx_alt ( â¦?,?⦠⢠â¬â¬*[?,?] ? ) | -csx_lift csx_lleq csx_lpx csx_lpxs csx_fpbs | -
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- parallel qrst-computation | -fpbg ( â¦?,?,?⦠>â¡[?,?] â¦?,?,?⦠) | -fpbg_lift fpbg_fleq fpbg_fpbs fpbg_fpbg | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- fpbs ( â¦?,?,?⦠â¥[?,?] â¦?,?,?⦠) | -fpbs_alt ( â¦?,?,?⦠â¥â¥[?,?] â¦?,?,?⦠) | -fpbs_lift fpbs_aaa fpbs_fpb fpbs_fpbs | -
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- decomposed rt-computation | -scpds ( â¦?,?⦠⢠? â¢*â¡*[?,?,?] ? ) | -scpds_lift scpds_aaa scpds_scpds | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- context-sensitive rt-computation | -lpxs ( â¦?,?⦠⢠â¡*[?,?] ? ) | -lpxs_drop lpxs_lleq lpxs_aaa lpxs_cpxs lpxs_lpxs | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- cpxs ( â¦?,?⦠⢠? â¡*[?,?] ? ) | -cpxs_tsts cpxs_tsts_vector cpxs_leq cpxs_lift cpxs_lleq cpxs_aaa cpxs_cpxs | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- context-sensitive computation | -lprs ( â¦?,?⦠⢠â¡* ? ) | -lprs_drop lprs_cprs lprs_lprs | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- cprs ( â¦?,?⦠⢠? â¡* ?) | -cprs_lift cprs_cprs | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- local env. ref. for generic reducibility | -lsubc ( ? ⢠? â«[?] ? ) | -lsubc_drop lsubc_drops lsubc_lsuba | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- support for generic computation properties | -gcp | -gcp_cr ( â¦?,?,?⦠ϵ[?] ã?ã ) | -gcp_aaa | -+ | rt-transition | +t-bound context-sensitive rt-transition | +lfpr ( â¦?,?⦠⢠â¡[?,?] ? ) | +lfpr_length lfpr_drops lfpr_fqup lfpr_frees lfpr_aaa lfpr_lfpx lfpr_lfpr | +
|
- |||||||||||||||||||||||||||||||
reduction | -parallel qrst-reduction | -fpbq ( â¦?,?,?⦠â½[?,?] â¦?,?,?⦠) | -fpbq_alt ( â¦?,?,?⦠â½â½[?,?] â¦?,?,?⦠) | -fpbq_lift fpbq_aaa |
|
@@ -596,8 +387,8 @@
|
- fpb ( â¦?,?,?⦠â»[?,?] â¦?,?,?⦠) | -fpb_lift fpb_lleq fpb_fleq | +cpr ( â¦?,?⦠⢠? â¡[?] ? ) | +cpr_drops |
|
@@ -609,9 +400,11 @@
|
- normal forms for context-sensitive rt-reduction | -cnx ( â¦?,?⦠⢠â¡[?,?] ðâ¦?⦠) | -cnx_lift cnx_crx cnx_cix | +
+ + |
+ cpm ( â¦?,?⦠⢠? â¡[?,?] ? ) | +cpm_simple cpm_drops cpm_lsubr cpm_cpx |
|
@@ -623,9 +416,9 @@
|
- context-sensitive rt-reduction | -lpx ( â¦?,?⦠⢠â¡[?,?] ? ) | -lpx_drop lpx_frees lpx_lleq lpx_aaa | +uncounted context-sensitive rt-transition | +lfpx ( â¦?,?⦠⢠â¬[?,?] ? ) | +lfpx_length lfpx_drops lfpx_fqup lfpx_frees lfpx_aaa |
|
@@ -640,8 +433,8 @@
|
- cpx ( â¦?,?⦠⢠? â¡[?,?] ? ) | -cpx_leq cpx_lift cpx_llpx_sn cpx_lleq cpx_cix | +cpx ( â¦?,?⦠⢠? â¬[?] ? ) | +cpx_simple cpx_drops cpx_lsubr |
|
@@ -653,9 +446,9 @@
|
- irreducible forms for context-sensitive rt-reduction | -cix ( â¦?,?⦠⢠â¡[?,?] ðâ¦?⦠) | -cix_lift | +counted context-sensitive rt-transition | +cpg ( â¦?,?⦠⢠? â¬[?,?] ? ) | +cpg_simple cpg_drops cpg_lsubr |
|
@@ -664,98 +457,80 @@
- - |
- reducible forms for context-sensitive rt-reduction | -crx ( â¦?,?⦠⢠â¡[?,?] ðâ¦?⦠) | -crx_lift | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- normal forms for context-sensitive reduction | -cnr ( â¦?,?⦠⢠⡠ðâ¦?⦠) | -cnr_lift cnr_crr cnr_cir | -+ | static typing | +parameters | +sh | +sd | +
|
- + |
|
||||||||||||||||||||||||||||||
+ |
|
- context-sensitive reduction | -lpr ( â¦?,?⦠⢠⡠? ) | -lpr_drop lpr_lpr | -+ | restricted ref. for atomic arity assignment | +lsuba ( ? ⢠? â«â ? ) | +lsuba_drops lsuba_lsubr lsuba_aaa lsuba_lsuba | +
|
- + |
|
||||||||||||||||||||||||||||||
- - |
- + |
|
- cpr ( â¦?,?⦠⢠? â¡ ? ) | -cpr_lift cpr_llpx_sn cpr_cir | -+ | atomic arity assignment | +aaa ( â¦?,?⦠⢠? â ? ) | +aaa_drops aaa_fqus aaa_lfeq aaa_aaa | +
|
- + |
|
||||||||||||||||||||||||||||||
+ |
|
- irreducible forms for context-sensitive reduction | -cir ( â¦?,?⦠⢠⡠ðâ¦?⦠) | -cir_lift | -+ | equivalence for closures on referred entries | +ffeq ( â¦?,?,?⦠⡠â¦?,?,?⦠) | +ffeq_freq | +
|
- + |
|
||||||||||||||||||||||||||||||
+ |
|
- reducible forms for context-sensitive reduction | -crr ( â¦?,?⦠⢠⡠ðâ¦?⦠) | -crr_lift | -+ | equivalence for local environments on referred entries | +lfeq ( ? â¡[?] ? ) | +lfeq_length lfeq_lreq lfeq_fqup lfeq_lfeq | +
|
- + |
|
||||||||||||||||||||||||||||||
unfold | -unfold | -unfold ( �,?⦠⢠? ⧫* ? ) | -+ |
|
+ generic extension on referred entries | +lfxs ( ? ⦻*[?,?] ? ) | +lfxs_length lfxs_drops lfxs_fqup lfxs_lfxs |
|
@@ -767,9 +542,9 @@
|
- iterated static type assignment | -lstas ( â¦?,?⦠⢠? â¢*[?,?] ? ) | -lstas_lift lstas_llpx_sn.ma lstas_aaa lstas_da lstas_lstas | +restricted ref. for context-sensitive free variables | +lsubf ( â¦?,?⦠â«ð * â¦?,?⦠) | +lsubf_frees |
|
@@ -778,52 +553,38 @@
|||||||||||||||||||||||||
static typing | -local env. ref. for degree assignment | -lsubd ( ? ⢠? â«âª[?,?] ? ) | -lsubd_da lsubd_lsubd | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
+ |
|
- degree assignment | -da ( â¦?,?⦠⢠? âª[?,?] ? ) | -da_lift da_aaa da_da | -+ | context-sensitive free variables | +frees ( ? ⢠ð *â¦?⦠⡠? ) | +frees_weight frees_lreq frees_drops frees_fqup frees_fqus frees_frees | +
|
- + |
|
||||||||||||||||||||||||||||||
+ |
|
- parameters | -sh | -sd | -+ | restricted ref. for local env. | +lsubr ( ? â« ? ) | +lsubr_length lsubr_drops lsubr_lsubr | +
|
- + |
|
||||||||||||||||||||||||||||||
- - |
- local env. ref. for atomic arity assignment | -lsuba ( ? ⢠? â«â ? ) | -lsuba_aaa lsuba_lsuba | +s-computation | +iterated structural successor for closures | +fqus ( â¦?,?,?⦠â* â¦?,?,?⦠) | +fqus_weight fqus_drops fqus_fqup fqus_fqus |
|
@@ -835,23 +596,11 @@
|
- atomic arity assignment | -aaa ( â¦?,?⦠⢠? â ? ) | -aaa_lift aaa_lifts aaa_fqus aaa_lleq aaa_aaa | -
- - |
-
- - |
- |||||||||||||||||||||||||||
+ |
|
- restricted local env. ref. | -lsubr ( ? â« ? ) | -lsubr_lsubr | +fqup ( â¦?,?,?⦠â+ â¦?,?,?⦠) | +fqup_weight fqup_drops fqup_fqup |
|
@@ -860,138 +609,10 @@
||||||||||||||||||||||||||||||||||
multiple substitution | -lazy equivalence | -fleq ( â¦?,?,?⦠â¡[?] â¦?,?,?⦠) | -fleq_fleq | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- lleq ( ? â¡[?,?] ? ) | -lleq_alt lleq_alt_rec lleq_leq lleq_drop lleq_fqus lleq_llor lleq_lleq | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- lazy pointwise extension of a relation | -llpx_sn | -llpx_sn_alt llpx_sn_alt_rec llpx_sn_tc llpx_sn_leq llpx_sn_drop llpx_sn_lpx_sn llpx_sn_frees llpx_sn_llor | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- pointwise union for local environments | -llor ( ? â[?,?] ? â¡ ? ) | -llor_alt llor_drop | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- context-sensitive exclusion from free variables | -frees ( ? ⢠? ϵ ð *[?]â¦?⦠) | -frees_append frees_leq frees_lift | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- contxt-sensitive multiple rt-substitution | -cpys ( â¦?,?⦠⢠? â¶*[?,?] ? ) | -cpys_alt ( â¦?,?⦠⢠? â¶â¶*[?,?] ? ) | -cpys_lift cpys_cpys | -
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- iterated structural successor for closures | -fqus ( â¦?,?,?⦠â* â¦?,?,?⦠) | -fqus_alt fqus_fqus | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
-
- - |
- fqup ( â¦?,?,?⦠â+ â¦?,?,?⦠) | -fqup_fqup | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- iterated local env. slicing | -drops ( â¬*[?,?] ? â¡ ? ) | -drops_drop drops_drops | -
- - |
-
- - |
- ||||||||||||||||||||||||||||||||||||
- - |
- generic term relocation | -lifts_vector ( â¬*[?] ? â¡ ? ) | -lifts_lift_vector | +s-transition | +structural successor for closures | +fquq ( â¦?,?,?⦠â⸮ â¦?,?,?⦠) | +fquq_length fquq_weight |
|
@@ -1006,8 +627,8 @@
|
- lifts ( â¬*[?] ? â¡ ? ) | -lifts_lift lifts_lifts | +fqu ( â¦?,?,?⦠â â¦?,?,?⦠) | +fqu_length fqu_weight |
|
@@ -1016,20 +637,12 @@
|||||||||||||||||||||||||||
+ | relocation | +generic slicing for local environments | +drops_vector ( â¬*[?,?] ? â¡ ? ) ( â¬*[?] ? â¡ ? ) | +
|
- support for multiple relocation | -mr2 ( @â¦?,?⦠⡠? ) | -mr2_plus ( ? + ? ) | -mr2_minus ( ? â ? â¡ ? ) | -mr2_mr2 | -||||||||||||||||||||||||||||||||
substitution | -structural successor for closures | -fquq ( â¦?,?,?⦠â⸮ â¦?,?,?⦠) | -fquq_alt ( â¦?,?,?⦠ââ⸮ â¦?,?,?⦠) |
|
@@ -1044,10 +657,8 @@
|
- fqu ( â¦?,?,?⦠â â¦?,?,?⦠) | -
- - |
+ drops ( â¬*[?,?] ? â¡ ? ) ( â¬*[?] ? â¡ ? ) | +drops_lstar drops_weight drops_length drops_ceq drops_lexs drops_lreq drops_drops |
|
@@ -1059,9 +670,9 @@
|
- global env. slicing | -gget ( â¬[?] ? â¡ ? ) | -gget_gget | +generic relocation for terms | +lifts_vector ( â¬*[?] ? â¡ ? ) | +lifts_lifts_vector |
|
@@ -1073,23 +684,11 @@
|
- contxt-sensitive ordinary rt-substitution | -cpy ( â¦?,?⦠⢠? â¶[?,?] ? ) | -cpy_lift cpy_nlift cpy_cpy | -
- - |
-
- - |
- |||||||||||||||||
+ |
|
- local env. ref. for rt-substitution | -lsuby ( ? â[?,?] ? ) | -lsuby_lsuby | +lifts ( â¬*[?] ? â¡ ? ) | +lifts_simple lifts_weight lifts_lifts |
|
@@ -1101,9 +700,9 @@
|
- pointwise extension of a relation | -lpx_sn | -lpx_sn_alt lpx_sn_tc lpx_sn_drop lpx_sn_lpx_sn | +ranged equivalence for local environments | +lreq ( ? â¡[?] ? ) | +lreq_length lreq_lreq |
|
@@ -1115,9 +714,9 @@
|
- basic local env. slicing | -drop ( â¬[?,?,?] ? â¡ ? ) | -drop_append drop_leq drop_drop | +generic entrywise extension | +lexs ( ? ⦻*[?,?,?] ? ) | +lexs_length lexs_lexs |
|
@@ -1126,40 +725,24 @@
||||||||||||||||||
- - |
- basic term relocation | -lift_vector ( â¬[?,?] ? â¡ ? ) | -lift_lift_vector | -+ | grammar | +append for local environments | +append ( ? @@ ? ) | +append_length | +
|
- + |
|
||||||||||||||||||||||||||||||
- - |
-
- - |
- lift ( â¬[?,?] ? â¡ ? ) | -lift_neq lift_lift | -
- - |
- + |
|
- |||||||||||||||||||||||||||||||||||
grammar | -equivalence for local environments | -leq ( ? ⩬[?,?] ? ) | -leq_leq | +context-sensitive equivalences for terms | +ceq | +ceq_ceq |
|
@@ -1221,7 +804,9 @@
lenv | lenv_weight ( â¯{?} ) | lenv_length ( |?| ) | -lenv_append ( ? @@ ? ) | +
+ + |
|||||||||||||||||||||||||||||
@@ -1272,13 +857,8 @@ |
Physical Structure of the Specification
- The source files are grouped in directories,
- one for each component.
-
-
-
+
@@ -1303,6 +883,6 @@
-
![lambdadelta rainbow rule [Spacer]](http://lambdadelta.info/images/rainbow.png)
+
![\lambda\delta rainbow rule [Spacer]](http://lambdadelta.info/images/rainbow.png)
@@ -1303,6 +883,6 @@
Last update: Tue, 14 Oct 2014 00:04:55 +0200
-
+ Last update: Thu, 19 Jan 2017 19:22:38 +0100
+