g A A g B A g B B g C A g C B g C C foldf x nil x foldf x cons y z f foldf x z y f t x f' t g x f' triple a b c C triple a b cons C c f' triple a b c B f triple a b c A f' triple a b c A f'' foldf triple cons A a nil c b f'' triple a b c foldf triple a b nil c 2.2 f t x f' t g x f' triple a b c A foldf triple cons A a nil c b foldf x cons y z f foldf x z y f' triple a b c A f'' foldf triple cons A a nil c b f t x g x f'' triple a b c foldf triple a b nil c foldf x cons y z foldf x z f' triple a b c B f triple a b c A true f' triple a b c B f triple a b c A foldf x cons y z foldf x z f'' triple a b c foldf triple a b nil c f' triple a b c A foldf triple cons A a nil c b f' triple a b c A f'' foldf triple cons A a nil c b foldf x cons y z f foldf x z y f t x f' t g x true f' 2 1 2 0 triple 3 2 3 17888 foldf 2 1 2 28225 C 0 28230 f 2 1 2 0 B 0 28230 A 0 28229 nil 0 1 f 2 1 2 1 g 1 0 f' 2 1 2 0 cons 2 1 2 0 foldf 2 1 2 0 g 1 1 0 f'' 1 1 28228 f'' 1 1 28227 foldf x cons y z foldf x z f' triple a b c B f triple a b c A g C A foldf x cons y z f foldf x z y g A A g B B g C B f' triple a b c C triple a b cons C c foldf x nil x f' triple a b c A f'' foldf triple cons A a nil c b f' triple a b c B f triple a b c A f t x f' t g x f'' triple a b c foldf triple a b nil c g C C g B A foldf x cons y z foldf x z true f' 2 2 0 triple 3 2 3 1 foldf 2 2 28225 C 0 1 f 2 1 2 B 0 1 A 0 1 nil 0 1 f 2 1 1 g 1 0 f' 2 1 2 cons 2 2 2 foldf 2 1 2 0 g 1 1 1 f'' 1 1 1 f'' 1 1 28227 g C A foldf x cons y z f foldf x z y g A A g B B g C B f' triple a b c C triple a b cons C c foldf x nil x f' triple a b c A f'' foldf triple cons A a nil c b f' triple a b c B f triple a b c A f t x f' t g x f'' triple a b c foldf triple a b nil c g C C g B A f' triple a b c B f triple a b c A false f t x g x false NaTT certifiable-1.6