Strictness analysis of the untyped \(\lambda\)-calculus (Q1114667)

From MaRDI portal
scientific article
Language Label Description Also known as
English
Strictness analysis of the untyped \(\lambda\)-calculus
scientific article

    Statements

    Strictness analysis of the untyped \(\lambda\)-calculus (English)
    0 references
    0 references
    1988
    0 references
    The author defines ``strictness'' and ``eager evaluation'' over the untyped lambda-calculus as follows: \({\mathcal E}\) is a primitive recursive function that reduces a \(\lambda\)-term to its head normal form (h.n.f.) (if any). Given S a finite set of natural numbers, a closed term M is said to be S-strict if whenever \(k\geq \max (S)\) and terms \(N_ 1,...,N_ k\) are such that if \(i\in S\), \(N_ i\) has no h.n.f. then \(MN_ 1...N_ k\) has no h.n.f. If p is a natural number, a closed term M is p-eagerly evaluable if whenever given \(k>p\) and terms \(N_ 1,...,N_ k\) such that \(MN_ 1...N_ k\) has h.n.f. then \(N_ p\) also has h.n.f. and \({\mathcal E}[MN_ 1N_ 2...N_ k]\) reduces internally to \({\mathcal E}[MN_ 1N_ 2...{\mathcal E}[N_ p]...[N_ k]].\) The following results are proved: A term is \(\{\) \(k\}\)-strict iff it is k-eagerly evaluable. If M is a closed term and \(M=\lambda z_ 1...z_ p...z_ kQ_ 1Q_ 2...Q_ n\), then M is \(\{\) \(j\}\)-strict iff \(j=k\).
    0 references
    strictness
    0 references
    eager evaluation
    0 references
    untyped lambda-calculus
    0 references
    head normal form
    0 references

    Identifiers