1
0
This repository has been archived on 2025-03-06. You can view files and clone it, but cannot push or open issues or pull requests.

58 lines
2.4 KiB
MiniZinc

/***
!Test
expected: !Result
solution: !Solution:
y:
- '{}'
- '4.0..infinity'
- '{2.0,3.0}'
- '2.0..2.0 union 3.0..3.0 union 4.0..infinity'
- '-1.0..1.0'
- '-1.0..1.0 union 4.0..infinity'
- '-1.0..1.0 union 2.0..2.0 union 3.0..3.0'
- '-1.0..1.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity'
- '{-3.0,-2.0}'
- '-3.0..-3.0 union -2.0..-2.0 union 4.0..infinity'
- '{-3.0,-2.0,2.0,3.0}'
- '-3.0..-3.0 union -2.0..-2.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity'
- '-3.0..-3.0 union -2.0..-2.0 union -1.0..1.0'
- '-3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 4.0..infinity'
- '-3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0'
- '-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'
- '-infinity..-4.0'
- '-infinity..-4.0 union 4.0..infinity'
- '-infinity..-4.0 union 2.0..2.0 union 3.0..3.0'
- '-infinity..-4.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity'
- '-infinity..-4.0 union -1.0..1.0'
- '-infinity..-4.0 union -1.0..1.0 union 4.0..infinity'
- '-infinity..-4.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0'
- '-infinity..-4.0 union -1.0..1.0 union 2.0..2.0 union 3.0..3.0 union 4.0..infinity'
- '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0'
- '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union 4.0..infinity'
- '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union 2.0..2.0 union 3.0..3.0'
- '-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'
- '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union -1.0..1.0'
- '-infinity..-4.0 union -3.0..-3.0 union -2.0..-2.0 union -1.0..1.0 union 4.0..infinity'
- '-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'
- '-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'
***/
array [1..5] of set of float: x = [
-infinity..-4.0,
{-3.0, -2.0},
-1.0..1.0,
{2.0, 3.0},
4.0..infinity
];
function set of float: s(bool: b, set of float: x) = if b then x else {} endif;
array [1..32] of string: y :: add_to_output = [
show(
s(a, x[1]) union
s(b, x[2]) union
s(c, x[3]) union
s(d, x[4]) union
s(e, x[5])
) | a, b, c, d, e in [false, true]
];