equal
deleted
inserted
replaced
695 fun gen_rat i = |
695 fun gen_rat i = |
696 let |
696 let |
697 val p = random_range 0 i; |
697 val p = random_range 0 i; |
698 val q = random_range 1 (i + 1); |
698 val q = random_range 1 (i + 1); |
699 val g = Integer.gcd p q; |
699 val g = Integer.gcd p q; |
700 val p' = Integer.div p g; |
700 val p' = p div g; |
701 val q' = Integer.div q g; |
701 val q' = q div g; |
702 in |
702 in |
703 (if one_of [true, false] then p' else ~ p', |
703 (if one_of [true, false] then p' else ~ p', |
704 if p' = 0 then 0 else q') |
704 if p' = 0 then 0 else q') |
705 end; |
705 end; |
706 *} |
706 *} |