Instances8Eval, …
type Eval (BuildFibTreeCoA n) = If (Eval (n >=Defined in fcf-containers-0.8.2 · Fcf.Alg.Tree2
)) ('NodeF0
'[n -1
, n -2
]) ('NodeF n '[])type Eval (BuildNodeCoA n) = If (Eval (((Defined in fcf-containers-0.8.2 · Fcf.Alg.Tree2
* n) +1
) >=8
)) ('NodeF n '[]) ('NodeF n '[2
* n, (2
* n) +1
])type Eval (FSum ('NodeF a2 '[])) =Defined in fcf-containers-0.8.2 · Fcf.Alg.Tree0
Instances to make TreeF to be a foldable sum. After this one, we can write the Sizes example.
type Eval (FSum ('NodeF a2 (b ': bs))) = Eval (Sum (b ': bs))Defined in fcf-containers-0.8.2 · Fcf.Alg.Treetype Eval (TreeToFix ('Node a2 '[])) = 'Fix ('NodeF a2 '[])Defined in fcf-containers-0.8.2 · Fcf.Alg.Treetype Eval (TreeToFix ('Node a2 (b ': bs))) = 'Fix ('NodeF a2 (Eval (Map TreeToFix (b ': bs))))Defined in fcf-containers-0.8.2 · Fcf.Alg.Treetype Eval (Map f ('NodeF a3 '[])) = 'NodeF a3 '[]Defined in fcf-containers-0.8.2 · Fcf.Alg.Treetype Eval (Map f ('NodeF a3 (b2 ': bs))) = 'NodeF a3 (Eval (Map f (b2 ': bs)))Defined in fcf-containers-0.8.2 · Fcf.Alg.Tree