Wolfram Language Paclet Repository

Community-contributed installable additions to the Wolfram Language

Primary Navigation

    • Cloud & Deployment
    • Core Language & Structure
    • Data Manipulation & Analysis
    • Engineering Data & Computation
    • External Interfaces & Connections
    • Financial Data & Computation
    • Geographic Data & Computation
    • Geometry
    • Graphs & Networks
    • Higher Mathematical Computation
    • Images
    • Knowledge Representation & Natural Language
    • Machine Learning
    • Notebook Documents & Presentation
    • Scientific and Medical Data & Computation
    • Social, Cultural & Linguistic Data
    • Strings & Text
    • Symbolic & Numeric Computation
    • System Operation & Setup
    • Time-Related Computation
    • User Interface Construction
    • Visualization & Graphics
    • Random Paclet
    • Alphabetical List
  • Using Paclets
    • Get Started
    • Download Definition Notebook
  • Learn More about Wolfram Language

Lambda

Guides

  • Guide

Symbols

  • BetaPositionReductions
  • BetaReduceChain
  • BetaReduceList
  • BetaReduce
  • BetaReducePositions
  • BetaReduceSizes
  • BetaReduceStepPlot
  • BetaReduceTreeList
  • BetaReductions
  • BetaSubstitute
  • BLCLambda
  • ChurchNumeral
  • ColorizeLambda
  • CombinatorLambda
  • EnumerateLambdas
  • EnumerateLinearLambdas
  • EnumerateSizeLambdas
  • EtaReduce
  • EvalLambda
  • FindMinimalLambdaCombinator
  • FromChurchNumeral
  • FunctionLambda
  • HighlightLambdaTree
  • LambdaApplication
  • LambdaArrayPlot
  • LambdaBLC
  • LambdaBrackets
  • LambdaCausalEvolutionGraph
  • LambdaCausalGraph
  • LambdaCombinator
  • LambdaConvert
  • LambdaDepthArrayPlot3D
  • LambdaDepthArrayPlot
  • LambdaDiagram
  • LambdaFunction
  • LambdaGraph
  • LambdaLoopbackGraph
  • LambdaMultiwayCausalEvolutionGraph
  • LambdaMultiwayCausalGraph
  • LambdaMultiwayGraph
  • LambdaRightApplication
  • LambdaSmiles
  • LambdaStringDiagram
  • LambdaString
  • LambdaToHaskell
  • LambdaTreeDiagram
  • LambdaTree
  • LambdaVariableForm
  • ParseLambda
  • RandomLambda
  • RandomSizeLambda
  • SmoothLambdaStringDiagram
  • TagLambda
  • UncolorizeLambda
  • UntagLambda
  • $LambdaCombinatorStore
Wolfram`Lambda`
EnumerateSizeLambdas
​
EnumerateSizeLambdas
[size]
return a list of all lambda terms with a given number of leaves.
​
​
EnumerateSizeLambdas
[size,lambdaSize,appSize,varSize]
specify how much each type of subterm contributes to the size.
​
Examples  
(1)
Basic Examples  
(1)
In[1]:=
EnumerateSizeLambdas
[5]
Out[1]=
λ.λ.λ.λ.[1],λ.λ.λ.λ.[2],λ.λ.λ.λ.[3],λ.λ.λ.λ.[4],λ.λ.λ.[1[1]],λ.λ.λ.[1[2]],λ.λ.λ.[1[3]],λ.λ.λ.[2[1]],λ.λ.λ.[2[2]],λ.λ.λ.[2[3]],λ.λ.λ.[3[1]],λ.λ.λ.[3[2]],λ.λ.λ.[3[3]],λ.λ.λ.[1][1],λ.λ.λ.[1][2],λ.λ.λ.[2][1],λ.λ.λ.[2][2],λ.λ.λ.[3][1],λ.λ.λ.[3][2],λ.λ.1λ.[1],λ.λ.1λ.[2],λ.λ.1λ.[3],λ.λ.2λ.[1],λ.λ.2λ.[2],λ.λ.2λ.[3],λ.λ.[1[1][1]],λ.λ.[1[1[1]]],λ.λ.[1[1][2]],λ.λ.[1[1[2]]],λ.λ.[1[2][1]],λ.λ.[1[2[1]]],λ.λ.[1[2][2]],λ.λ.[1[2[2]]],λ.λ.[2[1][1]],λ.λ.[2[1[1]]],λ.λ.[2[1][2]],λ.λ.[2[1[2]]],λ.λ.[2[2][1]],λ.λ.[2[2[1]]],λ.λ.[2[2][2]],λ.λ.[2[2[2]]],λ.λ.λ.[1][1],λ.λ.λ.[2][1],λ.λ.λ.[3][1],λ.λ.[1[1]][1],λ.λ.[1[2]][1],λ.λ.[2[1]][1],λ.λ.[2[2]][1],λ.1λ.λ.[1],λ.1λ.λ.[2],λ.1λ.λ.[3],λ.1λ.[1[1]],λ.1λ.[1[2]],λ.1λ.[2[1]],λ.1λ.[2[2]],λ.λ.[1]λ.[1],λ.λ.[1]λ.[2],λ.λ.[2]λ.[1],λ.λ.[2]λ.[2],λ.λ.[1][1][1],λ.λ.[1][1[1]],λ.λ.[2][1][1],λ.λ.[2][1[1]],λ.1λ.[1][1],λ.1λ.[1][1],λ.1λ.[2][1],λ.1λ.[2][1],λ.1[1]λ.[1],λ.11λ.[1],λ.1[1]λ.[2],λ.11λ.[2],λ.[1[1][1][1]],λ.[1[1[1][1]]],λ.[1[1[1]][1]],λ.[1[1[1[1]]]],λ.[1[1][1[1]]],λ.λ.[1]λ.[1],λ.λ.[2]λ.[1],λ.[1[1]]λ.[1],λ.[1]λ.λ.[1],λ.[1]λ.λ.[2],λ.[1]λ.[1[1]]
Number of closed lambda-terms of size n with size 0 for the variables:
In[2]:=
ResourceFunction["OEISSequence"]["A220894"]
Out[2]=
{0,1,3,14,82,579,4741,43977,454283,5159441,63782411,851368766,12188927818,186132043831,3017325884473,51712139570022,933654684562038,17702959714232057,351535449888420187,7292626296788508624,157698798590301690864,3547597554377118966359}
In[3]:=
TableLength@
EnumerateSizeLambdas
[size],{size,8}
Out[3]=
{0,1,3,14,82,579,4741,43977}
The number of closed lambda calculus terms of size n, where size(lambda x.M)=2+size(M), size(M N)=2+size(M)+size(N), and size(V)=1+i for a variable V bound by the i-th enclosing lambda (corresponding to a binary encoding):
In[4]:=
ResourceFunction["OEISSequence"]["A114852"]
Out[4]=
{0,0,0,0,1,0,1,1,2,1,6,5,13,14,37,44,101,134,298,431,883,1361,2736,4405,8574,14334,27465,47146,89270,156360,293840,522913,978447,1761907,3288605,5977863,11148652,20414058,38071898,70125402,130880047}
In[5]:=
TableLength@
EnumerateSizeLambdas
[size,2,2,1],{size,0,20}
Out[5]=
{0,0,0,0,1,0,1,1,2,1,6,5,13,14,37,44,101,134,298,431,883}
RelatedGuides
▪
Guide
""

© 2026 Wolfram. All rights reserved.

  • Legal & Privacy Policy
  • Contact Us
  • WolframAlpha.com
  • WolframCloud.com