DFA and TupleSet
This commit is contained in:
parent
9d4c7a5c8c
commit
5cd9720593
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -173,20 +173,20 @@
|
||||
gecode_SOT_MINUS = YAP_MkAtomTerm(X);
|
||||
YAP_AtomGetHold(X); }
|
||||
|
||||
YAP_UserCPredicate("gecode_constraint_unary_458", gecode_constraint_unary_458, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_454", gecode_constraint_unary_454, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_450", gecode_constraint_unary_450, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_345", gecode_constraint_nvalues_345, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_347", gecode_constraint_nvalues_347, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_341", gecode_constraint_nvalues_341, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_343", gecode_constraint_nvalues_343, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_337", gecode_constraint_nvalues_337, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_339", gecode_constraint_nvalues_339, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_max_298", gecode_constraint_max_298, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_max_296", gecode_constraint_max_296, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_max_297", gecode_constraint_max_297, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_max_302", gecode_constraint_max_302, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_max_300", gecode_constraint_max_300, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_max_301", gecode_constraint_max_301, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_max_305", gecode_constraint_max_305, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_dom_200", gecode_constraint_dom_200, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_dom_209", gecode_constraint_dom_209, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_convex_91", gecode_constraint_convex_91, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_325", gecode_constraint_nooverlap_325, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_329", gecode_constraint_nooverlap_329, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_assign_15", gecode_constraint_assign_15, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_assign_6", gecode_constraint_assign_6, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_assign_3", gecode_constraint_assign_3, 3);
|
||||
@ -204,11 +204,11 @@ YAP_UserCPredicate("gecode_constraint_element_227", gecode_constraint_element_22
|
||||
YAP_UserCPredicate("gecode_constraint_element_230", gecode_constraint_element_230, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_element_236", gecode_constraint_element_236, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_element_228", gecode_constraint_element_228, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_433", gecode_constraint_sequence_433, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_notMax_331", gecode_constraint_notMax_331, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_ite_252", gecode_constraint_ite_252, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_447", gecode_constraint_unary_447, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_nroot_335", gecode_constraint_nroot_335, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_437", gecode_constraint_sequence_437, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_notMax_335", gecode_constraint_notMax_335, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_ite_256", gecode_constraint_ite_256, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_451", gecode_constraint_unary_451, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_nroot_339", gecode_constraint_nroot_339, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_85", gecode_constraint_circuit_85, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_76", gecode_constraint_circuit_76, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_dom_199", gecode_constraint_dom_199, 5);
|
||||
@ -224,76 +224,76 @@ YAP_UserCPredicate("gecode_constraint_dom_206", gecode_constraint_dom_206, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_channel_66", gecode_constraint_channel_66, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_channel_62", gecode_constraint_channel_62, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_channel_60", gecode_constraint_channel_60, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_327", gecode_constraint_nooverlap_327, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_330", gecode_constraint_nooverlap_330, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_331", gecode_constraint_nooverlap_331, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_334", gecode_constraint_nooverlap_334, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_element_222", gecode_constraint_element_222, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_element_216", gecode_constraint_element_216, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_element_218", gecode_constraint_element_218, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_element_226", gecode_constraint_element_226, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_element_234", gecode_constraint_element_234, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_element_232", gecode_constraint_element_232, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_max_294", gecode_constraint_max_294, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_max_295", gecode_constraint_max_295, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_max_300", gecode_constraint_max_300, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_459", gecode_constraint_unshare_459, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_457", gecode_constraint_unshare_457, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_path_354", gecode_constraint_path_354, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_path_353", gecode_constraint_path_353, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_max_298", gecode_constraint_max_298, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_max_299", gecode_constraint_max_299, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_max_304", gecode_constraint_max_304, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_463", gecode_constraint_unshare_463, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_461", gecode_constraint_unshare_461, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_path_358", gecode_constraint_path_358, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_path_357", gecode_constraint_path_357, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_34", gecode_constraint_branch_34, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_28", gecode_constraint_branch_28, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_40", gecode_constraint_branch_40, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_mult_321", gecode_constraint_mult_321, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_mult_320", gecode_constraint_mult_320, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_mult_325", gecode_constraint_mult_325, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_mult_324", gecode_constraint_mult_324, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_clause_89", gecode_constraint_clause_89, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_clause_87", gecode_constraint_clause_87, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_362", gecode_constraint_precede_362, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_366", gecode_constraint_precede_366, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_distinct_160", gecode_constraint_distinct_160, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_member_312", gecode_constraint_member_312, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_member_311", gecode_constraint_member_311, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_member_308", gecode_constraint_member_308, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_member_307", gecode_constraint_member_307, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_member_304", gecode_constraint_member_304, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_member_303", gecode_constraint_member_303, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_mod_319", gecode_constraint_mod_319, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_mod_323", gecode_constraint_mod_323, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_cardinality_57", gecode_constraint_cardinality_57, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_atmostOne_53", gecode_constraint_atmostOne_53, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_channelSorted_73", gecode_constraint_channelSorted_73, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_251", gecode_constraint_extensional_251, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_253", gecode_constraint_extensional_253, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_248", gecode_constraint_extensional_248, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_268", gecode_constraint_linear_268, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_266", gecode_constraint_linear_266, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_254", gecode_constraint_linear_254, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_272", gecode_constraint_linear_272, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_270", gecode_constraint_linear_270, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_258", gecode_constraint_linear_258, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_286", gecode_constraint_linear_286, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_262", gecode_constraint_linear_262, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_290", gecode_constraint_linear_290, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_294", gecode_constraint_linear_294, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_82", gecode_constraint_circuit_82, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_402", gecode_constraint_rel_402, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_404", gecode_constraint_rel_404, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_418", gecode_constraint_rel_418, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_416", gecode_constraint_rel_416, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_406", gecode_constraint_rel_406, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_408", gecode_constraint_rel_408, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_422", gecode_constraint_rel_422, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_420", gecode_constraint_rel_420, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_392", gecode_constraint_rel_392, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_388", gecode_constraint_rel_388, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_384", gecode_constraint_rel_384, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_386", gecode_constraint_rel_386, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_383", gecode_constraint_rel_383, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_382", gecode_constraint_rel_382, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_379", gecode_constraint_rel_379, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_378", gecode_constraint_rel_378, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_375", gecode_constraint_rel_375, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_374", gecode_constraint_rel_374, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_371", gecode_constraint_rel_371, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_369", gecode_constraint_rel_369, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_373", gecode_constraint_rel_373, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_402", gecode_constraint_rel_402, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_404", gecode_constraint_rel_404, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_398", gecode_constraint_rel_398, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_400", gecode_constraint_rel_400, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_394", gecode_constraint_rel_394, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_407", gecode_constraint_rel_407, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_406", gecode_constraint_rel_406, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_411", gecode_constraint_rel_411, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_410", gecode_constraint_rel_410, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_415", gecode_constraint_rel_415, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_426", gecode_constraint_rel_426, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_428", gecode_constraint_rel_428, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_368", gecode_constraint_rel_368, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_366", gecode_constraint_rel_366, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_min_314", gecode_constraint_min_314, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_312", gecode_constraint_min_312, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_313", gecode_constraint_min_313, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_414", gecode_constraint_rel_414, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_419", gecode_constraint_rel_419, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_430", gecode_constraint_rel_430, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_432", gecode_constraint_rel_432, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_372", gecode_constraint_rel_372, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_370", gecode_constraint_rel_370, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_min_318", gecode_constraint_min_318, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_316", gecode_constraint_min_316, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_317", gecode_constraint_min_317, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_321", gecode_constraint_min_321, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_cardinality_56", gecode_constraint_cardinality_56, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_cardinality_58", gecode_constraint_cardinality_58, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_count_109", gecode_constraint_count_109, 4);
|
||||
@ -301,8 +301,8 @@ YAP_UserCPredicate("gecode_constraint_count_106", gecode_constraint_count_106, 4
|
||||
YAP_UserCPredicate("gecode_constraint_count_100", gecode_constraint_count_100, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_count_99", gecode_constraint_count_99, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_count_96", gecode_constraint_count_96, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sqrt_443", gecode_constraint_sqrt_443, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sqrt_442", gecode_constraint_sqrt_442, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sqrt_447", gecode_constraint_sqrt_447, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sqrt_446", gecode_constraint_sqrt_446, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_157", gecode_constraint_cumulatives_157, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_155", gecode_constraint_cumulatives_155, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_153", gecode_constraint_cumulatives_153, 9);
|
||||
@ -311,41 +311,41 @@ YAP_UserCPredicate("gecode_constraint_cumulatives_149", gecode_constraint_cumula
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_147", gecode_constraint_cumulatives_147, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_145", gecode_constraint_cumulatives_145, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_143", gecode_constraint_cumulatives_143, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_344", gecode_constraint_nvalues_344, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_346", gecode_constraint_nvalues_346, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_340", gecode_constraint_nvalues_340, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_342", gecode_constraint_nvalues_342, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_336", gecode_constraint_nvalues_336, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nvalues_338", gecode_constraint_nvalues_338, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_binpacking_54", gecode_constraint_binpacking_54, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_281", gecode_constraint_linear_281, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_285", gecode_constraint_linear_285, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_273", gecode_constraint_linear_273, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_289", gecode_constraint_linear_289, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_277", gecode_constraint_linear_277, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_281", gecode_constraint_linear_281, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_abs_52", gecode_constraint_abs_52, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_convex_90", gecode_constraint_convex_90, 2);
|
||||
YAP_UserCPredicate("gecode_constraint_div_163", gecode_constraint_div_163, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_div_162", gecode_constraint_div_162, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_408", gecode_constraint_rel_408, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_412", gecode_constraint_rel_412, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_391", gecode_constraint_rel_391, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_392", gecode_constraint_rel_392, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_416", gecode_constraint_rel_416, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_395", gecode_constraint_rel_395, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_396", gecode_constraint_rel_396, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_384", gecode_constraint_rel_384, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_380", gecode_constraint_rel_380, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_376", gecode_constraint_rel_376, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_372", gecode_constraint_rel_372, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_370", gecode_constraint_rel_370, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_421", gecode_constraint_rel_421, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_422", gecode_constraint_rel_422, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_423", gecode_constraint_rel_423, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_424", gecode_constraint_rel_424, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_weights_461", gecode_constraint_weights_461, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_max_299", gecode_constraint_max_299, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_path_349", gecode_constraint_path_349, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_374", gecode_constraint_rel_374, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_425", gecode_constraint_rel_425, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_426", gecode_constraint_rel_426, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_427", gecode_constraint_rel_427, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_428", gecode_constraint_rel_428, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_weights_465", gecode_constraint_weights_465, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_max_303", gecode_constraint_max_303, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_path_353", gecode_constraint_path_353, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_459", gecode_constraint_unary_459, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_455", gecode_constraint_unary_455, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_451", gecode_constraint_unary_451, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_445", gecode_constraint_unary_445, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_448", gecode_constraint_unary_448, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nroot_334", gecode_constraint_nroot_334, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nroot_333", gecode_constraint_nroot_333, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_436", gecode_constraint_sorted_436, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_449", gecode_constraint_unary_449, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_452", gecode_constraint_unary_452, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nroot_338", gecode_constraint_nroot_338, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_nroot_337", gecode_constraint_nroot_337, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_440", gecode_constraint_sorted_440, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_80", gecode_constraint_circuit_80, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_77", gecode_constraint_circuit_77, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_74", gecode_constraint_circuit_74, 5);
|
||||
@ -376,9 +376,9 @@ YAP_UserCPredicate("gecode_constraint_assign_8", gecode_constraint_assign_8, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_assign_5", gecode_constraint_assign_5, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_assign_11", gecode_constraint_assign_11, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_assign_14", gecode_constraint_assign_14, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_395", gecode_constraint_rel_395, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_385", gecode_constraint_rel_385, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_path_352", gecode_constraint_path_352, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_399", gecode_constraint_rel_399, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_389", gecode_constraint_rel_389, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_path_356", gecode_constraint_path_356, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_45", gecode_constraint_branch_45, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_29", gecode_constraint_branch_29, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_23", gecode_constraint_branch_23, 4);
|
||||
@ -387,15 +387,15 @@ YAP_UserCPredicate("gecode_constraint_branch_35", gecode_constraint_branch_35, 4
|
||||
YAP_UserCPredicate("gecode_constraint_branch_47", gecode_constraint_branch_47, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_41", gecode_constraint_branch_41, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_49", gecode_constraint_branch_49, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_mult_322", gecode_constraint_mult_322, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_mult_326", gecode_constraint_mult_326, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_81", gecode_constraint_circuit_81, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_78", gecode_constraint_circuit_78, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_75", gecode_constraint_circuit_75, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_clause_88", gecode_constraint_clause_88, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_clause_86", gecode_constraint_clause_86, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_368", gecode_constraint_precede_368, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_365", gecode_constraint_precede_365, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_364", gecode_constraint_precede_364, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_361", gecode_constraint_precede_361, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_360", gecode_constraint_precede_360, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_channel_69", gecode_constraint_channel_69, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_126", gecode_constraint_cumulative_126, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_129", gecode_constraint_cumulative_129, 7);
|
||||
@ -409,20 +409,22 @@ YAP_UserCPredicate("gecode_constraint_cumulative_137", gecode_constraint_cumulat
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_131", gecode_constraint_cumulative_131, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_distinct_161", gecode_constraint_distinct_161, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_distinct_158", gecode_constraint_distinct_158, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_member_313", gecode_constraint_member_313, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_member_309", gecode_constraint_member_309, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_member_305", gecode_constraint_member_305, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_mod_318", gecode_constraint_mod_318, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sqr_440", gecode_constraint_sqr_440, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sqr_439", gecode_constraint_sqr_439, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_432", gecode_constraint_sequence_432, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_430", gecode_constraint_sequence_430, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_path_350", gecode_constraint_path_350, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_path_347", gecode_constraint_path_347, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_path_344", gecode_constraint_path_344, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_mod_322", gecode_constraint_mod_322, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sqr_444", gecode_constraint_sqr_444, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sqr_443", gecode_constraint_sqr_443, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_436", gecode_constraint_sequence_436, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_434", gecode_constraint_sequence_434, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_path_354", gecode_constraint_path_354, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_path_351", gecode_constraint_path_351, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_path_348", gecode_constraint_path_348, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_divmod_166", gecode_constraint_divmod_166, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_437", gecode_constraint_sorted_437, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_250", gecode_constraint_extensional_250, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_441", gecode_constraint_sorted_441, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_252", gecode_constraint_extensional_252, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_255", gecode_constraint_extensional_255, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_247", gecode_constraint_extensional_247, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_250", gecode_constraint_extensional_250, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_84", gecode_constraint_circuit_84, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_83", gecode_constraint_circuit_83, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_channel_71", gecode_constraint_channel_71, 3);
|
||||
@ -453,36 +455,38 @@ YAP_UserCPredicate("gecode_constraint_cumulatives_146", gecode_constraint_cumula
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_144", gecode_constraint_cumulatives_144, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulatives_142", gecode_constraint_cumulatives_142, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_binpacking_55", gecode_constraint_binpacking_55, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_249", gecode_constraint_extensional_249, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_251", gecode_constraint_extensional_251, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_254", gecode_constraint_extensional_254, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_246", gecode_constraint_extensional_246, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_289", gecode_constraint_linear_289, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_extensional_249", gecode_constraint_extensional_249, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_293", gecode_constraint_linear_293, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_257", gecode_constraint_linear_257, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_297", gecode_constraint_linear_297, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_261", gecode_constraint_linear_261, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_265", gecode_constraint_linear_265, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_263", gecode_constraint_linear_263, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_280", gecode_constraint_linear_280, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_279", gecode_constraint_linear_279, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_269", gecode_constraint_linear_269, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_267", gecode_constraint_linear_267, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_284", gecode_constraint_linear_284, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_283", gecode_constraint_linear_283, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_272", gecode_constraint_linear_272, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_271", gecode_constraint_linear_271, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_288", gecode_constraint_linear_288, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_287", gecode_constraint_linear_287, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_276", gecode_constraint_linear_276, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_275", gecode_constraint_linear_275, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_329", gecode_constraint_nooverlap_329, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_324", gecode_constraint_nooverlap_324, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_280", gecode_constraint_linear_280, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_279", gecode_constraint_linear_279, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_333", gecode_constraint_nooverlap_333, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_328", gecode_constraint_nooverlap_328, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_div_164", gecode_constraint_div_164, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_sqr_441", gecode_constraint_sqr_441, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_path_351", gecode_constraint_path_351, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_path_348", gecode_constraint_path_348, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_path_345", gecode_constraint_path_345, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_sqr_445", gecode_constraint_sqr_445, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_path_355", gecode_constraint_path_355, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_path_352", gecode_constraint_path_352, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_path_349", gecode_constraint_path_349, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_457", gecode_constraint_unary_457, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_460", gecode_constraint_unary_460, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_453", gecode_constraint_unary_453, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_456", gecode_constraint_unary_456, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_449", gecode_constraint_unary_449, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_452", gecode_constraint_unary_452, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_446", gecode_constraint_unary_446, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_435", gecode_constraint_sorted_435, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_438", gecode_constraint_sorted_438, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_unary_450", gecode_constraint_unary_450, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_439", gecode_constraint_sorted_439, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sorted_442", gecode_constraint_sorted_442, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_element_223", gecode_constraint_element_223, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_element_217", gecode_constraint_element_217, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_element_235", gecode_constraint_element_235, 8);
|
||||
@ -506,7 +510,7 @@ YAP_UserCPredicate("gecode_constraint_element_238", gecode_constraint_element_23
|
||||
YAP_UserCPredicate("gecode_constraint_element_231", gecode_constraint_element_231, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_element_237", gecode_constraint_element_237, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_element_229", gecode_constraint_element_229, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_434", gecode_constraint_sequence_434, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_438", gecode_constraint_sequence_438, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_30", gecode_constraint_branch_30, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_26", gecode_constraint_branch_26, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_24", gecode_constraint_branch_24, 5);
|
||||
@ -515,10 +519,10 @@ YAP_UserCPredicate("gecode_constraint_branch_36", gecode_constraint_branch_36, 5
|
||||
YAP_UserCPredicate("gecode_constraint_branch_42", gecode_constraint_branch_42, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_38", gecode_constraint_branch_38, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_circuit_79", gecode_constraint_circuit_79, 7);
|
||||
YAP_UserCPredicate("gecode_constraint_pow_357", gecode_constraint_pow_357, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_pow_356", gecode_constraint_pow_356, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_pow_361", gecode_constraint_pow_361, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_pow_360", gecode_constraint_pow_360, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_367", gecode_constraint_precede_367, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_363", gecode_constraint_precede_363, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_precede_359", gecode_constraint_precede_359, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_128", gecode_constraint_cumulative_128, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_124", gecode_constraint_cumulative_124, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_118", gecode_constraint_cumulative_118, 6);
|
||||
@ -528,16 +532,16 @@ YAP_UserCPredicate("gecode_constraint_cumulative_136", gecode_constraint_cumulat
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_130", gecode_constraint_cumulative_130, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_133", gecode_constraint_cumulative_133, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_distinct_159", gecode_constraint_distinct_159, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_310", gecode_constraint_min_310, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_min_311", gecode_constraint_min_311, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_min_316", gecode_constraint_min_316, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sqrt_444", gecode_constraint_sqrt_444, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_431", gecode_constraint_sequence_431, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_429", gecode_constraint_sequence_429, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_460", gecode_constraint_unshare_460, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_458", gecode_constraint_unshare_458, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_path_355", gecode_constraint_path_355, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_path_346", gecode_constraint_path_346, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_min_314", gecode_constraint_min_314, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_min_315", gecode_constraint_min_315, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_min_320", gecode_constraint_min_320, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_sqrt_448", gecode_constraint_sqrt_448, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_435", gecode_constraint_sequence_435, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_sequence_433", gecode_constraint_sequence_433, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_464", gecode_constraint_unshare_464, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_unshare_462", gecode_constraint_unshare_462, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_path_359", gecode_constraint_path_359, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_path_350", gecode_constraint_path_350, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_divmod_165", gecode_constraint_divmod_165, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_31", gecode_constraint_branch_31, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_27", gecode_constraint_branch_27, 6);
|
||||
@ -546,11 +550,11 @@ YAP_UserCPredicate("gecode_constraint_branch_33", gecode_constraint_branch_33, 6
|
||||
YAP_UserCPredicate("gecode_constraint_branch_37", gecode_constraint_branch_37, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_43", gecode_constraint_branch_43, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_branch_39", gecode_constraint_branch_39, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_328", gecode_constraint_nooverlap_328, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_332", gecode_constraint_nooverlap_332, 9);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_120", gecode_constraint_cumulative_120, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_132", gecode_constraint_cumulative_132, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_member_310", gecode_constraint_member_310, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_member_306", gecode_constraint_member_306, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_member_302", gecode_constraint_member_302, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_count_111", gecode_constraint_count_111, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_count_113", gecode_constraint_count_113, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_count_115", gecode_constraint_count_115, 6);
|
||||
@ -559,8 +563,8 @@ YAP_UserCPredicate("gecode_constraint_count_103", gecode_constraint_count_103, 6
|
||||
YAP_UserCPredicate("gecode_constraint_count_105", gecode_constraint_count_105, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_count_93", gecode_constraint_count_93, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_count_95", gecode_constraint_count_95, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_pow_358", gecode_constraint_pow_358, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_notMin_332", gecode_constraint_notMin_332, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_pow_362", gecode_constraint_pow_362, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_notMin_336", gecode_constraint_notMin_336, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_127", gecode_constraint_cumulative_127, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_123", gecode_constraint_cumulative_123, 8);
|
||||
YAP_UserCPredicate("gecode_constraint_cumulative_139", gecode_constraint_cumulative_139, 8);
|
||||
@ -583,54 +587,54 @@ YAP_UserCPredicate("gecode_constraint_dom_203", gecode_constraint_dom_203, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_dom_191", gecode_constraint_dom_191, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_dom_182", gecode_constraint_dom_182, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_dom_211", gecode_constraint_dom_211, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_288", gecode_constraint_linear_288, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_287", gecode_constraint_linear_287, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_292", gecode_constraint_linear_292, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_291", gecode_constraint_linear_291, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_269", gecode_constraint_linear_269, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_267", gecode_constraint_linear_267, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_256", gecode_constraint_linear_256, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_255", gecode_constraint_linear_255, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_296", gecode_constraint_linear_296, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_295", gecode_constraint_linear_295, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_273", gecode_constraint_linear_273, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_271", gecode_constraint_linear_271, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_260", gecode_constraint_linear_260, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_259", gecode_constraint_linear_259, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_264", gecode_constraint_linear_264, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_262", gecode_constraint_linear_262, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_278", gecode_constraint_linear_278, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_263", gecode_constraint_linear_263, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_268", gecode_constraint_linear_268, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_266", gecode_constraint_linear_266, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_282", gecode_constraint_linear_282, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_270", gecode_constraint_linear_270, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_286", gecode_constraint_linear_286, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_274", gecode_constraint_linear_274, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_323", gecode_constraint_nooverlap_323, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_326", gecode_constraint_nooverlap_326, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_linear_278", gecode_constraint_linear_278, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_327", gecode_constraint_nooverlap_327, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_nooverlap_330", gecode_constraint_nooverlap_330, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_element_245", gecode_constraint_element_245, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_element_243", gecode_constraint_element_243, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_element_241", gecode_constraint_element_241, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_element_239", gecode_constraint_element_239, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_405", gecode_constraint_rel_405, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_407", gecode_constraint_rel_407, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_423", gecode_constraint_rel_423, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_421", gecode_constraint_rel_421, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_393", gecode_constraint_rel_393, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_394", gecode_constraint_rel_394, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_391", gecode_constraint_rel_391, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_387", gecode_constraint_rel_387, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_385", gecode_constraint_rel_385, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_390", gecode_constraint_rel_390, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_381", gecode_constraint_rel_381, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_377", gecode_constraint_rel_377, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_401", gecode_constraint_rel_401, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_403", gecode_constraint_rel_403, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_419", gecode_constraint_rel_419, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_417", gecode_constraint_rel_417, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_389", gecode_constraint_rel_389, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_390", gecode_constraint_rel_390, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_387", gecode_constraint_rel_387, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_383", gecode_constraint_rel_383, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_381", gecode_constraint_rel_381, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_386", gecode_constraint_rel_386, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_377", gecode_constraint_rel_377, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_373", gecode_constraint_rel_373, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_397", gecode_constraint_rel_397, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_399", gecode_constraint_rel_399, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_393", gecode_constraint_rel_393, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_396", gecode_constraint_rel_396, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_405", gecode_constraint_rel_405, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_400", gecode_constraint_rel_400, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_409", gecode_constraint_rel_409, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_413", gecode_constraint_rel_413, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_414", gecode_constraint_rel_414, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_420", gecode_constraint_rel_420, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_425", gecode_constraint_rel_425, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_427", gecode_constraint_rel_427, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_367", gecode_constraint_rel_367, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_365", gecode_constraint_rel_365, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_315", gecode_constraint_min_315, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_417", gecode_constraint_rel_417, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_418", gecode_constraint_rel_418, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_424", gecode_constraint_rel_424, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_429", gecode_constraint_rel_429, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_431", gecode_constraint_rel_431, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_371", gecode_constraint_rel_371, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_rel_369", gecode_constraint_rel_369, 4);
|
||||
YAP_UserCPredicate("gecode_constraint_min_319", gecode_constraint_min_319, 5);
|
||||
YAP_UserCPredicate("gecode_constraint_count_108", gecode_constraint_count_108, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_count_98", gecode_constraint_count_98, 3);
|
||||
YAP_UserCPredicate("gecode_constraint_ite_253", gecode_constraint_ite_253, 6);
|
||||
YAP_UserCPredicate("gecode_constraint_ite_257", gecode_constraint_ite_257, 6);
|
||||
|
@ -31,3 +31,41 @@ test4(A) :-
|
||||
min(A, 1),
|
||||
all_different(A),
|
||||
labeling([], [X,Y,Z]).
|
||||
test5(A) :-
|
||||
A = [X,Y,Z],
|
||||
A ins 0..1,
|
||||
in_relation( A, [[0,0,0],[0,1,0],[1,0,0]] ),
|
||||
X #> 0,
|
||||
labeling([], A).
|
||||
test6(A+B) :-
|
||||
A = [X,Y,Z],
|
||||
B = [X1,Y1,Z1],
|
||||
A ins 0..1,
|
||||
B ins 0..1,
|
||||
extensional_constraint([[0,0,0],[0,1,0],[1,0,0]], C),
|
||||
in_relation( A, C ),
|
||||
in_relation( B, C ),
|
||||
X #> 0,
|
||||
X1 #< X,
|
||||
Y1 #\= Z1,
|
||||
labeling([], A),
|
||||
labeling([], B).
|
||||
test7(A) :-
|
||||
A = [X,Y,Z],
|
||||
A ins 0..1,
|
||||
in_dfa( A, 0, [t(0,0,0),t(0,1,1),t(1,0,0),t(-1,0,0)], [0]),
|
||||
X #> 0,
|
||||
labeling([], A).
|
||||
test8(A+B) :-
|
||||
A = [X,Y,Z,W],
|
||||
B = [X1,Y1,Z1,W1],
|
||||
A ins 0..1,
|
||||
B ins 0..1,
|
||||
dfa( 0, [t(0,0,0),t(0,1,1),t(1,0,0),t(-1,0,0)], [0], C),
|
||||
in_dfa( A, C ),
|
||||
in_dfa( B, C ),
|
||||
X #> 0,
|
||||
X1 #< X,
|
||||
Y1 #\= Z1,
|
||||
labeling([], A),
|
||||
labeling([], B).
|
||||
|
@ -39,7 +39,12 @@
|
||||
min/2,
|
||||
maximum/2,
|
||||
max/2,
|
||||
scalar_product/4, /*
|
||||
scalar_product/4,
|
||||
extensional_constraint/2,
|
||||
in_relation/2,
|
||||
dfa/4,
|
||||
in_dfa/2,
|
||||
in_dfa/4, /*
|
||||
tuples_in/2, */
|
||||
labeling/2 /*,
|
||||
label/1,
|
||||
@ -87,6 +92,9 @@ constraint( min(_, _) ). %2,
|
||||
constraint( minimum(_, _) ). %2,
|
||||
constraint( max(_, _) ). %2,
|
||||
constraint( maximum(_, _) ). %2,
|
||||
constraint( in_relation(_, _) ). %2,
|
||||
constraint( in_dfa(_, _) ). %2,
|
||||
constraint( in_dfa(_, _, _, _) ). %2,
|
||||
constraint( tuples_in(_, _) ). %2,
|
||||
constraint( labeling(_, _) ). %2,
|
||||
constraint( label(_) ). %1,
|
||||
@ -217,6 +225,15 @@ maximum( V, Xs ) :-
|
||||
max( Xs, V ) :-
|
||||
get_home(Env),
|
||||
post( rel( max(Xs), (#=), V ), Env, _ ).
|
||||
in_relation( Xs, Rel ) :-
|
||||
get_home(Env),
|
||||
post(in_tupleset(Xs, Rel), Env, _ ).
|
||||
in_dfa( Xs, Rel ) :-
|
||||
get_home(Env),
|
||||
post(in_dfa(Xs, Rel), Env, _ ).
|
||||
in_dfa( Xs, S0, Ts, Fs ) :-
|
||||
get_home(Env),
|
||||
post(in_dfa(Xs, S0, Ts, Fs), Env, _ ).
|
||||
|
||||
labeling(_Opts, Xs) :-
|
||||
get_home(Space-Map),
|
||||
@ -228,6 +245,12 @@ maximize(V) :-
|
||||
l(V, I, Map),
|
||||
Space += maximize(I).
|
||||
|
||||
extensional_constraint( Tuples, TupleSet) :-
|
||||
TupleSet := tupleset( Tuples ).
|
||||
|
||||
dfa( S0, Transitions, Finals, DFA) :-
|
||||
DFA := dfa( S0, Transitions, Finals ).
|
||||
|
||||
post( ( A #= B), Env, Reify) :-
|
||||
post( rel( A, (#=), B), Env, Reify).
|
||||
post( ( A #\= B), Env, Reify) :-
|
||||
@ -370,6 +393,37 @@ post( all_distinct( Cs , Xs ), Space-Map, Reify) :-
|
||||
;
|
||||
throw(error(domain(not_reifiable),all_distinct( Cs , Xs )))
|
||||
).
|
||||
post(in_tupleset(Xs, Tuples), Space-Map, Reify) :-
|
||||
is_list( Tuples ), !,
|
||||
TS := tupleset( Tuples ),
|
||||
maplist(ll(Map), Xs, IXs),
|
||||
(var(Reify) ->
|
||||
Space += extensional(IXs, TS)
|
||||
;
|
||||
throw(error(domain(not_reifiable),in_relation(Xs, Tuples)))
|
||||
).
|
||||
post(in_tupleset(Xs, TS), Space-Map, Reify) :-
|
||||
maplist(ll(Map), Xs, IXs),
|
||||
(var(Reify) ->
|
||||
Space += extensional(IXs, TS)
|
||||
;
|
||||
throw(error(domain(not_reifiable),in_relation(Xs, Tuples)))
|
||||
).
|
||||
post(in_dfa(Xs, S0, Trs, Fs), Space-Map, Reify) :-
|
||||
TS := dfa( S0, Trs, Fs ),
|
||||
maplist(ll(Map), Xs, IXs),
|
||||
(var(Reify) ->
|
||||
Space += extensional(IXs, TS)
|
||||
;
|
||||
throw(error(domain(not_reifiable),in_dfa(Xs, Tuples)))
|
||||
).
|
||||
post(in_dfa(Xs, TS), Space-Map, Reify) :-
|
||||
maplist(ll(Map), Xs, IXs),
|
||||
(var(Reify) ->
|
||||
Space += extensional(IXs, TS)
|
||||
;
|
||||
throw(error(domain(not_reifiable),in_dfa(Xs, Tuples)))
|
||||
).
|
||||
|
||||
gecode_arith_op( (#=) , 'IRT_EQ' ).
|
||||
gecode_arith_op( (#\=) , 'IRT_NQ' ).
|
||||
|
@ -190,8 +190,7 @@ class DeclsLoader(object):
|
||||
|
||||
class PredGenerator(DeclsLoader):
|
||||
|
||||
OMIT = ("DFA", # NOT YET SUPPORTED!!!
|
||||
"VarBranchOptions",
|
||||
OMIT = ("VarBranchOptions",
|
||||
"ValBranchOptions",
|
||||
"TieBreakVarBranch<IntVarBranch>",
|
||||
"TieBreak<IntVarBranch>",
|
||||
|
@ -171,7 +171,13 @@ extern "C"
|
||||
static inline TupleSet&
|
||||
gecode_TupleSet_from_term(YAP_Term t)
|
||||
{
|
||||
return *(TupleSet *) YAP_IntOfTerm(t);
|
||||
return *(TupleSet *) YAP_OpaqueObjectFromTerm(t);
|
||||
}
|
||||
|
||||
static inline DFA&
|
||||
gecode_DFA_from_term(YAP_Term t)
|
||||
{
|
||||
return *(DFA *) YAP_OpaqueObjectFromTerm(t);
|
||||
}
|
||||
|
||||
static inline FloatNum
|
||||
@ -1580,7 +1586,6 @@ extern "C"
|
||||
|
||||
static int gecode_tupleset_fail_handler(void* p)
|
||||
{
|
||||
//delete *(GenericSpace**)p;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -1593,19 +1598,11 @@ extern "C"
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static YAP_Term gecode_term_from_tupleset(TupleSet& r)
|
||||
{
|
||||
YAP_Term term =
|
||||
YAP_NewOpaqueObject(gecode_tupleset_tag, sizeof(TupleSet *));
|
||||
TupleSet *ptr =
|
||||
(TupleSet*) YAP_OpaqueObjectFromTerm(term);
|
||||
*ptr = r;
|
||||
return term;
|
||||
}
|
||||
|
||||
static int gecode_new_tupleset(void)
|
||||
{
|
||||
TupleSet ts;
|
||||
YAP_Term term =
|
||||
YAP_NewOpaqueObject(gecode_tupleset_tag, sizeof(TupleSet));
|
||||
TupleSet *ts = new (YAP_OpaqueObjectFromTerm(term)) TupleSet;
|
||||
YAP_Term t = YAP_ARG1;
|
||||
while (YAP_IsPairTerm( t ) ) {
|
||||
YAP_Term l = YAP_HeadOfTerm(t);
|
||||
@ -1614,14 +1611,79 @@ extern "C"
|
||||
IntArgs is(n);
|
||||
while (YAP_IsPairTerm( l ) ) {
|
||||
YAP_Term ll = YAP_HeadOfTerm(l);
|
||||
if (!YAP_IsIntTerm(ll)) {
|
||||
cerr << "non-integer on tuple set" << endl; exit(1);
|
||||
}
|
||||
is[i++] = YAP_IntOfTerm(ll);
|
||||
l = YAP_TailOfTerm(l);
|
||||
}
|
||||
ts.add(is);
|
||||
ts->add(is);
|
||||
if (l != YAP_TermNil()) {
|
||||
cerr << "non-list on tuple set" << endl; exit(1);
|
||||
}
|
||||
t = YAP_TailOfTerm(t);
|
||||
}
|
||||
ts.finalize();
|
||||
return YAP_Unify(YAP_ARG2, gecode_term_from_tupleset( ts ));
|
||||
if (t != YAP_TermNil()) {
|
||||
cerr << "non-list on tuple set" << endl; exit(1);
|
||||
}
|
||||
ts->finalize();
|
||||
return YAP_Unify(YAP_ARG2, term);
|
||||
}
|
||||
|
||||
static YAP_opaque_tag_t gecode_dfa_tag;
|
||||
static YAP_opaque_handler_t gecode_dfa_handler;
|
||||
|
||||
static int gecode_dfa_fail_handler(void* p)
|
||||
{
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static int
|
||||
gecode_dfa_write_handler
|
||||
(void *stream_, YAP_opaque_tag_t type, void *p, int flags)
|
||||
{
|
||||
IOSTREAM* stream = (IOSTREAM*) stream_;
|
||||
Sfprintf(stream,"<dfa %p>", p);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static int gecode_new_dfa(void)
|
||||
{
|
||||
YAP_Term term =
|
||||
YAP_NewOpaqueObject(gecode_dfa_tag, sizeof(DFA));
|
||||
// DFA ts = new (YAP_OpaqueObjectFromTerm(term)) DFA;
|
||||
YAP_Term t2 = YAP_ARG2;
|
||||
int s0 = YAP_IntOfTerm(t2);
|
||||
YAP_Term t3 = YAP_ARG3;
|
||||
int n = gecode_list_length(t3), i=0;
|
||||
DFA::Transition t[n];
|
||||
while (YAP_IsPairTerm( t3 ) ) {
|
||||
YAP_Term tt = YAP_HeadOfTerm(t3);
|
||||
int is, sy, os;
|
||||
is = YAP_IntOfTerm(YAP_ArgOfTerm(1,tt));
|
||||
sy = YAP_IntOfTerm(YAP_ArgOfTerm(2,tt));
|
||||
os = YAP_IntOfTerm(YAP_ArgOfTerm(3,tt));
|
||||
t[i++] = DFA::Transition(is, sy, os);
|
||||
t3 = YAP_TailOfTerm(t3);
|
||||
}
|
||||
if (t3 != YAP_TermNil()) {
|
||||
cerr << "non-list on DFA" << endl; exit(1);
|
||||
}
|
||||
YAP_Term t4 = YAP_ARG4;
|
||||
n = gecode_list_length(t4)+1;
|
||||
i=0;
|
||||
int s[n];
|
||||
s[n-1] = -1;
|
||||
while (YAP_IsPairTerm( t4 ) ) {
|
||||
YAP_Term tt = YAP_HeadOfTerm(t4);
|
||||
s[i++] = YAP_IntOfTerm(tt);
|
||||
t4 = YAP_TailOfTerm(t4);
|
||||
}
|
||||
if (t4 != YAP_TermNil()) {
|
||||
cerr << "non-list on DFA" << endl; exit(1);
|
||||
}
|
||||
new (YAP_OpaqueObjectFromTerm(term)) DFA(s0, t, s);
|
||||
return YAP_Unify(YAP_ARG1, term);
|
||||
}
|
||||
|
||||
void gecode_init(void)
|
||||
@ -1813,11 +1875,16 @@ extern "C"
|
||||
gecode_reify_handler.write_handler = gecode_reify_write_handler;
|
||||
gecode_reify_tag = YAP_NewOpaqueType(&gecode_reify_handler);
|
||||
YAP_UserCPredicate("gecode_new_reify", gecode_new_reify, 4);
|
||||
// TupleSet reifications
|
||||
// Opaque TupleSet
|
||||
gecode_tupleset_handler.fail_handler = gecode_tupleset_fail_handler;
|
||||
gecode_tupleset_handler.write_handler = gecode_tupleset_write_handler;
|
||||
gecode_tupleset_tag = YAP_NewOpaqueType(&gecode_tupleset_handler);
|
||||
YAP_UserCPredicate("gecode_new_tupleset", gecode_new_tupleset, 4);
|
||||
YAP_UserCPredicate("gecode_new_tupleset", gecode_new_tupleset, 2);
|
||||
// Opaque DFA
|
||||
gecode_dfa_handler.fail_handler = gecode_dfa_fail_handler;
|
||||
gecode_dfa_handler.write_handler = gecode_dfa_write_handler;
|
||||
gecode_dfa_tag = YAP_NewOpaqueType(&gecode_dfa_handler);
|
||||
YAP_UserCPredicate("gecode_new_dfa", gecode_new_dfa, 4);
|
||||
#ifdef DISJUNCTOR
|
||||
// opaque disjunctors and clauses
|
||||
gecode_disjunctor_handler.write_handler = gecode_disjunctor_write_handler;
|
||||
@ -1908,8 +1975,5 @@ extern "C"
|
||||
YAP_UserCPredicate("gecode_floatvar_max", gecode_floatvar_max, 3);
|
||||
YAP_UserCPredicate("gecode_floatvar_med", gecode_floatvar_med, 3);
|
||||
YAP_UserCPredicate("gecode_floatvar_size", gecode_floatvar_size, 3);
|
||||
// TupleSets
|
||||
YAP_UserCPredicate("gecode_new_tupleset", gecode_new_tupleset, 2);
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -118,10 +118,14 @@ is_IntSetArgs_([H|T],[H2|T2]) :- is_IntSet(H,H2), is_IntSetArgs(T,T2).
|
||||
is_IntSetArgs(X,Y) :- nonvar(X), is_IntSetArgs_(X,Y).
|
||||
is_IntSetArgs(X) :- \+ \+ is_IntSetArgs(X,_).
|
||||
|
||||
is_TupleSet_('TupleSet'(L),L).
|
||||
is_TupleSet_('TupleSet'(TS),TS).
|
||||
is_TupleSet(X,Y) :- nonvar(X), is_TupleSet_(X,Y).
|
||||
is_TupleSet(X) :- is_TupleSet(X,_).
|
||||
|
||||
is_DFA_('DFA'(TS),TS).
|
||||
is_DFA(X,Y) :- nonvar(X), is_DFA_(X,Y).
|
||||
is_DFA(X) :- is_DFA(X,_).
|
||||
|
||||
new_intset(X,I,J) :- intset(X,I,J).
|
||||
new_intset(X,L) :- intset(X,L).
|
||||
|
||||
@ -156,6 +160,8 @@ assert_is_IntSet(X,Y) :-
|
||||
is_IntSet(X,Y) -> true ; throw(gecode_error(expected(intset))).
|
||||
assert_is_TupleSet(X,Y) :-
|
||||
is_TupleSet(X,Y) -> true ; throw(gecode_error(expected(tupleset))).
|
||||
assert_is_DFA(X,Y) :-
|
||||
is_DFA(X,Y) -> true ; throw(gecode_error(expected(dfa))).
|
||||
assert_is_IntVar(X,Y) :-
|
||||
is_IntVar(X,Y) -> true ; throw(gecode_error(expected(intvar))).
|
||||
assert_is_BoolVar(X,Y) :-
|
||||
@ -546,9 +552,13 @@ new_setvar(SVar,Space,X1,X2) :-
|
||||
gecode_new_setvar_12(Idx,Space_,X1_,X2_),
|
||||
SVar='SetVar'(Idx,-1).
|
||||
|
||||
new_tuple_set( List, X1 ) :-
|
||||
gecode_new_tuple_set(List, X1_),
|
||||
X1 = 'TupleSet'(X1_, -1).
|
||||
new_tupleset( TupleSet, List ) :-
|
||||
gecode_new_tupleset(List, TupleSet_),
|
||||
TupleSet = 'TupleSet'(TupleSet_).
|
||||
|
||||
new_dfa( DFA, S0, List, Finals ) :-
|
||||
gecode_new_dfa(DFA_, S0, List, Finals),
|
||||
DFA = 'DFA'(DFA_).
|
||||
|
||||
|
||||
minimize(Space,IVar) :-
|
||||
@ -937,6 +947,8 @@ keep_list_(_, X) :-
|
||||
(X := setvars(Space,N,X1,X2,X3,X4)) :- !, new_setvars_(X,Space,N,X1,X2,X3,X4).
|
||||
(X := setvars(Space,N,X1,X2,X3)) :- !, new_setvars_(X,Space,N,X1,X2,X3).
|
||||
(X := setvars(Space,N,X1,X2)) :- !, new_setvars_(X,Space,N,X1,X2).
|
||||
(X := tupleset(Set)) :- !, new_tupleset(X, Set).
|
||||
(X := dfa(S0, Transitions, Finals)) :- !, new_dfa(X, S0, Transitions, Finals).
|
||||
|
||||
(X := min(Space,Var)) :- !, get_min(X,Space,Var).
|
||||
(X := max(Space,Var)) :- !, get_max(X,Space,Var).
|
||||
@ -1024,7 +1036,8 @@ keep_list_(_, X) :-
|
||||
(Space += element(X1,X2,X3,X4,X5)) :- !, element(Space,X1,X2,X3,X4,X5).
|
||||
(Space += element(X1,X2,X3,X4,X5,X6)) :- !, element(Space,X1,X2,X3,X4,X5,X6).
|
||||
(Space += element(X1,X2,X3,X4,X5,X6,X7)) :- !, element(Space,X1,X2,X3,X4,X5,X6,X7).
|
||||
(Space += linear(X1,X2,X3)) :- !, linear(Space,X1,X2,X3).
|
||||
(Space += extensional(X1,X2)) :- !, extensional(Space,X1,X2).
|
||||
(Space += extensional(X1,X2,X3)) :- !, extensional(Space,X1,X2,X3).
|
||||
(Space += linear(X1,X2,X3,X4)) :- !, linear(Space,X1,X2,X3,X4).
|
||||
(Space += linear(X1,X2,X3,X4,X5)) :- !, linear(Space,X1,X2,X3,X4,X5).
|
||||
(Space += linear(X1,X2,X3,X4,X5,X6)) :- !, linear(Space,X1,X2,X3,X4,X5,X6).
|
||||
|
Reference in New Issue
Block a user