SLIDE 5 Syntax of Lλ
ar - acyclic recursion (Lλ r full recursion without acyclicity)
Gallin Types: σ :≡ e | t | s | (τ1 → τ2) Constants: Constτ = {cτ
0, cτ 1, . . . }
Variables: PureVarsτ = {vτ
0, vτ 1, . . . }, RecVarsτ = {pτ 0, pτ 1, . . . }
Terms of Lλ
ar (Lλ r ):
A :≡ cτ : τ | xτ : τ (1a) | B(σ→τ)(Cσ) : τ (1b) | λ(vσ) (Bτ) : (σ → τ) (1c) | Aσ
0 where {pσ1 1 := Aσ1 1 , . . . , pσn n := Aσn n } : σ
(1d) given that: cτ ∈ Constτ, xτ ∈ PureVarsτ ∪ RecVarsτ pi ∈ RecVarsσi, Ai ∈ Termsσi {pσ1
1 := Aσ1 1 , . . . , pσn n := Aσn n } satisfies the Acyclicity Constraint iff:
there exists a function rank: {p1, . . . , pn} → N s.th. if pj occurs freely in Ai, then rank(pi) > rank(pj)