array_bool_or.fzn 570 Bytes
% RUNS ON flatzinc
% RUNS ON fzn_fd_canon
% RUNS ON fzn_fdlp_canon
% RUNS ON fzn_lazyfd_canon
% RUNS ON fzn_sat_canon

var bool: x1 :: output_var;
var bool: x2 :: output_var;
var bool: x3 :: output_var;
constraint array_bool_or([], false);
constraint array_bool_or([false], false);
constraint array_bool_or([true], true);
constraint array_bool_or([false, true],  true);
constraint array_bool_or([false, false], false);
constraint array_bool_or([true,  false], true);
constraint array_bool_or([true,  true],  true);
constraint array_bool_or([x1, x2], x3);
solve satisfy;