
module List_int

  use int.Int
  
  type list = Nil | Cons int list
  
  function length (l:list) : int = 
    match l with
    | Nil -> 0
    | Cons _ l -> 1 + length l
    end
   
  goal g1: forall l:list. length l <> 0

  goal g2: forall l:list. length l <> 1
  
end

module List_poly

  use list.List
  use list.Length
  
  goal g1: forall l:list int. length l <> 0

  goal g2: forall l:list int. length l <> 1
  
end