Commit 05ca6beb authored by Jean-Christophe Filliâtre's avatar Jean-Christophe Filliâtre
Browse files

modules: stdlib split in files ref and array

parent e62f3515
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
parameter incr : x:ref int -> { } unit writes x { x = old x + 1 }
......
......@@ -2,7 +2,7 @@ module M
exception Exception int
use import module stdlib.Ref
use import module ref.Ref
parameter t : ref int
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
exception Break
......
......@@ -43,7 +43,7 @@ let p6 () =
(* composition of exceptions with side-effect on a reference *)
use import module stdlib.Ref
use import module ref.Ref
parameter x : ref int
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(* for loop with invariant *)
let test1 () =
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(** 1. A loop increasing [i] up to 10. *)
......
module M
use import module stdlib.Ref
use import module ref.Ref
logic q1 int int int
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(* Tests for proof obligations. *)
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(** Recursive functions *)
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(* Side effect in expressions (Bart Jacobs' tricky example) *)
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(* side effects in tests *)
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
parameter x : ref int
......
......@@ -15,9 +15,9 @@ Pages: 321 - 322
module Algo63
use import int.Int
use import module stdlib.Ref
use import module stdlib.Array
use import module stdlib.ArrayPermut
use import module ref.Ref
use import module array.Array
use import module array.ArrayPermut
parameter partition :
a : array int -> m:int -> n:int -> i:ref int -> j:ref int ->
......
......@@ -15,13 +15,13 @@ Pages: 321 - 322
module Algo64
use import int.Int
use import module stdlib.Ref
use import module stdlib.Array
use import module stdlib.ArrayPermut
use import module ref.Ref
use import module array.Array
use import module array.ArrayPermut
logic sorted_sub (a: array int) (l u: int)
(*
clone import module stdlib.ArraySorted with type elt = int, logic le = (<=)
clone import module array.ArraySorted with type elt = int, logic le = (<=)
*)
(* Algorithm 63 *)
......
......@@ -15,9 +15,9 @@ Pages: 321 - 322
module Algo65
use import int.Int
use import module stdlib.Ref
use import module stdlib.Array
use import module stdlib.ArrayPermut
use import module ref.Ref
use import module array.Array
use import module array.ArrayPermut
(* algorithm 63 *)
......
......@@ -3,8 +3,8 @@
module M
use import module stdlib.Refint
use import module stdlib.Array
use import module ref.Refint
use import module array.Array
parameter a : array int
......@@ -44,7 +44,7 @@ module ARM
use export int.Int
use export map.Map
use export module stdlib.Ref
use export module ref.Ref
(* memory *)
parameter mem : ref (map int int)
......
......@@ -6,8 +6,8 @@ module M
use import int.Int
use import int.ComputerDivision
use import module stdlib.Ref
use import module stdlib.Array
use import module ref.Ref
use import module array.Array
(* the code and its specification *)
......
......@@ -21,7 +21,7 @@ module M1
use import int.Int
use import int.ComputerDivision
use import module stdlib.Ref
use import module ref.Ref
type pointer
type memory
......@@ -67,7 +67,7 @@ module M2
use import int.Int
use import int.ComputerDivision
use import module stdlib.Ref
use import module ref.Ref
type pointer
type memory
......@@ -115,7 +115,7 @@ module M3
use import int.Int
use import int.ComputerDivision
use import module stdlib.Ref
use import module ref.Ref
type int32
logic to_int int32 : int
......
......@@ -3,7 +3,7 @@
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(* Parameters.
Without loss of generality, we can take [x1=0] and [y1=0].
......
module M
use import int.Int
use import module stdlib.Ref
use import module ref.Ref
(* preliminaries *)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment