1/*** 2!Test 3expected: !Result 4 solution: !Solution: 5 y: 6 - '{}' 7 - '4.0..infinity' 8 - '{2.0,3.0}' 9 - '2.0..2.0 union 3.0..3.0 union 4.0..infinity' 10 - '-1.0..1.0' 11 - '-1.0..1.0 union 4.0..infinity' 12 - '-1.0..1.0 union 2.0..2.0 union 3.0..3.0' 13 - '-1.0..1.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity' 14 - '{-3.0,-2.0}' 15 - '-3.0..-3.0 union -2.0..-2.0 union 4.0..infinity' 16 - '{-3.0,-2.0,2.0,3.0}' 17 - '-3.0..-3.0 union -2.0..-2.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity' 18 - '-3.0..-3.0 union -2.0..-2.0 union -1.0..1.0' 19 - '-3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 4.0..infinity' 20 - '-3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0' 21 - '-3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity' 22 - '-infinity..-4.0' 23 - '-infinity..-4.0 union 4.0..infinity' 24 - '-infinity..-4.0 union 2.0..2.0 union 3.0..3.0' 25 - '-infinity..-4.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity' 26 - '-infinity..-4.0 union -1.0..1.0' 27 - '-infinity..-4.0 union -1.0..1.0 union 4.0..infinity' 28 - '-infinity..-4.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0' 29 - '-infinity..-4.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity' 30 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0' 31 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union 4.0..infinity' 32 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union 2.0..2.0 union 3.0..3.0' 33 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity' 34 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union -1.0..1.0' 35 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 4.0..infinity' 36 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0' 37 - '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity' 38***/ 39 40array [1..5] of set of float: x = [ 41 -infinity..-4.0, 42 {-3.0, -2.0}, 43 -1.0..1.0, 44 {2.0, 3.0}, 45 4.0..infinity 46]; 47 48function set of float: s(bool: b, set of float: x) = if b then x else {} endif; 49 50array [1..32] of string: y :: add_to_output = [ 51 show( 52 s(a, x[1]) union 53 s(b, x[2]) union 54 s(c, x[3]) union 55 s(d, x[4]) union 56 s(e, x[5]) 57 ) | a, b, c, d, e in [false, true] 58];