Skip to content

Y combinator has INET normal form! #14

@Kesanov

Description

@Kesanov

evaluating /Y id reduces to

0 '1:1 0:1 0:2 0:0'
1 '1:2 0:0 1:0 3:1'
2
3
4
5
6
7
8
9

evaluating Y reduces to

{ loops: 41, rules: 10, betas: 4, dupls: 4, annis: 6 }
0 '1:0 0:1 0:2 0:0'
1 '0:0 10:0 6:2 1:3'
2 '9:1 4:1 4:2 2:3'
3
4 '5:2 2:1 2:2 4:2'
5 '9:2 6:1 4:0 2:1'
6 '10:1 5:1 1:2 1:3'
7
8
9 '10:2 2:0 5:0 1:2'
10 '1:1 6:0 9:0 3:3'
11
12
13
14
15

How can INET find normal form for recursive term?

Note that:

  • Calling fromNet on it raises Maximum call stack size exceeded.
  • @succl /Y #r #x /r /succ x also has normal form.
  • @succr /Y #r #x /succ /r x does not have normal form. It raises JavaScript heap out of memory.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions