Getting Started
After following the “Get Started + Install” guide;
tree_graph
Compute a tree graph, which takes both a value to initialise the tree from, and an “orbit distance” for how many layers deep in the tree to compute;
tree_graph(16, 3)
#> $`16`
#> $`16`$`32`
#> $`16`$`32`$`64`
#> $`16`$`32`$`64`$`128`
#> [1] NA
#>
#> $`16`$`32`$`64`$`21`
#> [1] NA
#>
#>
#>
#> $`16`$`5`
#> $`16`$`5`$`10`
#> $`16`$`5`$`10`$`20`
#> [1] NA
#>
#> $`16`$`5`$`10`$`3`
#> [1] NA
It will also stop on finding a cycle;
tree_graph(4, 3)
#> $`4`
#> $`4`$`8`
#> $`4`$`8`$`16`
#> $`4`$`8`$`16`$`32`
#> [1] NA
#>
#> $`4`$`8`$`16`$`5`
#> [1] NA
#>
#>
#>
#> $`4`$`1`
#> $`4`$`1`$`2`
#> $`4`$`1`$`2`$CYCLE_INIT
#> [1] 4
And can be parameterised;
tree_graph(1, 1, -3, -2, -5)
#> $`1`
#> $`1`$`-3`
#> [1] NA
If b is a multiple of a, but not of Pa, then 0 can have a reverse;
tree_graph(0, 1, 17, 2, -6)
#> $`0`
#> $`0`$CYCLE_INIT
#> [1] 0
#>
#> $`0`$`3`
#> [1] NA
The tree graph can run on bigz
;
tree_graph((27+as.bigz("576460752303423488")), 3)
#> $`576460752303423515`
#> $`576460752303423515`$`1152921504606847030`
#> $`576460752303423515`$`1152921504606847030`$`2305843009213694060`
#> $`576460752303423515`$`1152921504606847030`$`2305843009213694060`$`4611686018427388120`
#> [1] NA
#>
#>
#> $`576460752303423515`$`1152921504606847030`$`384307168202282343`
#> $`576460752303423515`$`1152921504606847030`$`384307168202282343`$`768614336404564686`
#> [1] NA