diff options
author | Jason Gross <jgross@mit.edu> | 2018-02-23 16:00:17 -0500 |
---|---|---|
committer | Jason Gross <jgross@mit.edu> | 2018-02-23 16:00:17 -0500 |
commit | 238791d4dfa95b9810600643ee2ae542b41bd203 (patch) | |
tree | 2ea3b2424026e8f2250a68b9ce1559856a5c8b61 /src/Util/ZRange | |
parent | 445ed267c10c9ddffa7d4173e03689ecce05d407 (diff) |
Add ZRange.intersection
Diffstat (limited to 'src/Util/ZRange')
-rw-r--r-- | src/Util/ZRange/Operations.v | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Util/ZRange/Operations.v b/src/Util/ZRange/Operations.v index 8f597eced..efb0dc9c8 100644 --- a/src/Util/ZRange/Operations.v +++ b/src/Util/ZRange/Operations.v @@ -16,6 +16,11 @@ Module ZRange. let (ly, uy) := eta y in r[ Z.min lx ly ~> Z.max ux uy ]. + Definition intersection (x y : zrange) : zrange + := let (lx, ux) := eta x in + let (ly, uy) := eta y in + r[ Z.max lx ly ~> Z.min ux uy ]. + Definition normalize (v : zrange) : zrange := r[ Z.min (lower v) (upper v) ~> Z.max (upper v) (lower v) ]. |