let rec nb_chang = function
lr -> if is_empty_list (lr)
then 0
else
if is_empty_list (tail (lr))
then 0
else
if eq_rat (head (lr), cons_rat ("0", "1"))
then nb_chang (tail (lr))
else
if eq_rat (head (tail (lr)), cons_rat ("0", "1"))
then nb_chang (cons_list (head (lr), tail (tail (lr))))
else
if gt_rat (mult_rat (head (lr), head (tail (lr))), cons_rat ("0", "1"))
then nb_chang (tail (lr))
else 1 + nb_chang (tail (lr))