-let measure_of_t =\r
- let rec aux acc = function\r
- | V _ -> acc, 0\r
- | A(b,t1,t2) ->\r
- let acc, m1 = aux acc t1 in\r
- let acc, m2 = aux acc t2 in\r
- (match b with\r
- | `Some b when !b && not (List.memq b acc) -> b::acc, 1 + m1 + m2\r
- | _ -> acc, m1 + m2)\r
- | L t -> aux acc t\r
- in snd ++ (aux [])\r
-;;\r
-\r