let exhaustive ~of_cube ~to_cube = let of_vars, to_vars = of_cube.Cube.vars, to_cube.Cube.vars in let dif = Variable.extra_vars of_vars to_vars in let to_vars = if dif = [] then to_vars else to_vars@dif in Variable.all_permutations of_vars to_vars