sig
  type 'a node = Nil | Cons of 'a * 'LogtkLazyList.t
  and 'a t = 'a node Lazy.t
  val nil : 'LogtkLazyList.t
  val cons : '-> 'LogtkLazyList.t -> 'LogtkLazyList.t
  val to_list : 'LogtkLazyList.t -> 'a list
  val to_seq : 'LogtkLazyList.t -> 'Sequence.t
  val fold : ('-> '-> 'a) -> '-> 'LogtkLazyList.t -> 'a
end