lab([required,strong,prefer,weak]). ********* using LPB *********** ?-solve_constr_hier([[X=Y,Z\=Y,X=b,Z=b]@strong,[Y=c]@weak],[[]],A). X = b Y = b Z = _769 A = [_769\=b] ; X = c Y = c Z = b A = [] ; X = b Y = b Z = b A = [] ; X = b Y = c Z = b A = [] ; no ?-solve_constr_hier([[X=a,Y=b,Y\=b]@strong],[[X=Y]],A). X = a Y = a A = [] ; X = b Y = b A = [] ; no ?-solve_constr_hier([[X=a,Y=b,Y\=b]@strong,[Y=b]@prefer],[[X=Y]],A). X = a Y = a A = [] ; X = b Y = b A = [] ; no ********* using RPB *********** ?-solve_constr_hier([[X=Y,Z\=Y,X=b,Z=b]@strong,[Y=c]@weak],[[]],A). X = b Y = c Z = b A = [] ; X = c Y = c Z = b A = [] ; no ?-solve_constr_hier([[X=a,Y=b,Y\=b]@strong],[[X=Y]],A). X = b Y = b A = [] ; X = a Y = a A = [] ; no ?-solve_constr_hier([[X=a,Y=b,Y\=b]@strong,[Y=b]@prefer],[[X=Y]],A). X = b Y = b A = [] ; no ********* using UCB *********** ?-solve_constr_hier([[X=Y,Z\=Y,X=b,Z=b]@strong,[Y=c]@weak],[[]],A). X = b Y = c Z = b A = [] ; X = c Y = c Z = b A = [] ; no ?-solve_constr_hier([[X=a,Y=b,Y\=b]@strong],[[X=Y]],A). X = a Y = a A = [] ; no ?-solve_constr_hier([[X=a,Y=b,Y\=b]@strong,[Y=b]@prefer],[[X=Y]],A). X = a Y = a A = [] ; no ********* using WSB *********** ?-solve_constr_hier([[(X=Y,1),(Z\=Y,1),(X=b,1),(Z=b,1)]@strong,[(Y=c,1)]@weak],[[]],A). X = b Y = c Z = b A = [] ; X = c Y = c Z = b A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,1),(Y\=b,1)]@strong],[[X=Y]],A). X = a Y = a A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,2),(Y\=b,1)]@strong],[[X=Y]],A). X = b Y = b A = [] ; X = a Y = a A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,1),(Y\=b,1)]@strong,[(Y=b,1)]@prefer],[[X=Y]],A). X = a Y = a A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,2),(Y\=b,1)]@strong,[(Y=b,1)]@prefer],[[X=Y]],A). X = b Y = b A = [] ; no ********* using WCB *********** ?-solve_constr_hier([[(X=Y,1),(Z\=Y,1),(X=b,1),(Z=b,1)]@strong],[[]],A). X = b Y = _3028 Z = b A = [b\=_3028] ; X = b Y = b Z = b A = [] ; X = _3027 Y = _3027 Z = b A = [b\=_3027] ; X = b Y = b Z = _3035 A = [_3035\=b] ; no ?-solve_constr_hier([[(X=Y,1),(Z\=Y,1),(X=b,1),(Z=b,1)]@strong,[(Y=c,1)]@weak],[[]],A). X = b Y = c Z = b A = [] ; X = c Y = c Z = b A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,1),(Y\=b,1)]@strong],[[X=Y]],A). X = b Y = b A = [] ; X = a Y = a A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,2),(Y\=b,1)]@strong],[[X=Y]],A). X = b Y = b A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,1),(Y\=b,1)]@strong,[(Y=b,1)]@prefer],[[X=Y]],A). X = b Y = b A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,1),(Y\=b,1)]@strong,[(Y=c,1)]@prefer],[[X=Y]],A). X = b Y = b A = [] ; X = a Y = a A = [] ; no ?-solve_constr_hier([[(X=a,1),(Y=b,2),(Y\=b,1)]@strong,[(Y=b,1)]@prefer],[[X=Y]],A). X = b Y = b A = [] ; no ?-solve_constr_hier([[(X=a,2),(Y=b,1),(Y\=b,1)]@strong,[(Y=b,1)]@prefer],[[X=Y]],A). X = a Y = a A = [] ; no