src/HOL/SPARK/Manual/document/Simple_Gcd.adb
author wenzelm
Mon, 11 Feb 2013 14:39:04 +0100
changeset 51085 d90218288d51
parent 45044 2fae15f8984d
permissions -rw-r--r--
make WWW_Find work again, now that its ML modules reside within a theory context (cf. bf5b45870110) -- patch by Rafal Kolanski;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
45044
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     1
package body Simple_Greatest_Common_Divisor
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     2
is
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     3
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     4
   procedure G_C_D (M, N : in Natural; G : out Natural)
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     5
   is
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     6
      C, D, R : Natural;
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     7
   begin
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     8
      C := M; D := N;
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
     9
      while D /= 0
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    10
        --# assert Gcd (C, D) = Gcd (M, N);
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    11
      loop
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    12
         R := C mod D;
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    13
         C := D; D := R;
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    14
      end loop;
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    15
      G := C;
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    16
   end G_C_D;
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    17
2fae15f8984d Added documentation for HOL-SPARK
berghofe
parents:
diff changeset
    18
end Simple_Greatest_Common_Divisor;