The Complexity and Expressive Power of Valued Constraints ACP - - PowerPoint PPT Presentation

the complexity and expressive power of valued constraints
SMART_READER_LITE
LIVE PREVIEW

The Complexity and Expressive Power of Valued Constraints ACP - - PowerPoint PPT Presentation

The Complexity and Expressive Power of Valued Constraints ACP Doctoral Research Award 2011 Standa ivn (Oxford) CP11, Perugia, Italy a abs_value all_differ_from_at_least_k_pos all_equal all_min_dist alldifferent


slide-1
SLIDE 1

The Complexity and Expressive Power of Valued Constraints

ACP Doctoral Research Award 2011 Standa Živný (Oxford)

CP’11, Perugia, Italy

slide-2
SLIDE 2 abs_value all_differ_from_at_least_k_pos all_equal all_min_dist alldifferent alldifferent_between_sets alldifferent_consecutive_values alldifferent_cst alldifferent_except_0 alldifferent_interval alldifferent_modulo alldifferent_on_intersection alldifferent_partition alldifferent_same_value allperm among among_diff_0 among_interval among_low_up among_modulo among_seq among_var and arith arith_or arith_sliding assign_and_counts assign_and_nvalues atleast atleast_nvalue atleast_nvector atmost atmost1 atmost_nvalue atmost_nvector balance balance_interval balance_modulo balance_partition between_min_max bin_packing bin_packing_capa binary_tree bipartite calendar cardinality_atleast cardinality_atmost cardinality_atmost_partition change change_continuity change_pair change_partition circuit circuit_cluster circular_change clause_and clause_or clique colored_matrix coloured_cumulative coloured_cumulatives common common_interval common_modulo common_partition cond_lex_cost cond_lex_greater cond_lex_greatereq cond_lex_less cond_lex_lesseq connect_points connected consecutive_groups_of_ones consecutive_values contains_sboxes correspondence count counts coveredby_sboxes covers_sboxes crossing cumulative cumulative_convex cumulative_product cumulative_two_d cumulative_with_level_of_priority cumulatives cutset cycle cycle_card_on_path cycle_or_accessibility cycle_resource cyclic_change cyclic_change_joker dag decreasing deepest_valley derangement differ_from_at_least_k_pos diffn diffn_column diffn_include discrepancy disj disjoint disjoint_sboxes disjoint_tasks disjunctive distance distance_between distance_change dom_reachability domain domain_constraint elem elem_from_to element element_greatereq element_lesseq element_matrix element_product element_sparse elementn elements elements_alldifferent elements_sparse eq eq_cst eq_set equal_sboxes equivalent exactly gcd geost geost_time geq geq_cst global_cardinality global_cardinality_low_up global_cardinality_low_up_no_loop global_cardinality_no_loop global_cardinality_with_costs global_contiguity golomb graph_crossing graph_isomorphism group group_skip_isolated_item gt highest_peak imply in in_interval in_interval_reified in_intervals in_relation in_same_partition in_set increasing increasing_global_cardinality increasing_nvalue increasing_nvalue_chain indexed_sum inflexion inside_sboxes int_value_precede int_value_precede_chain interval_and_count interval_and_sum inverse inverse_offset inverse_set inverse_within_range ith_pos_different_from_0 k_alldifferent k_cut k_disjoint k_same k_same_interval k_same_modulo k_same_partition k_used_by k_used_by_interval k_used_by_modulo k_used_by_partition length_first_sequence length_last_sequence leq leq_cst lex2 lex_alldifferent lex_between lex_chain_less lex_chain_lesseq lex_different lex_equal lex_greater lex_greatereq lex_less lex_lesseq lex_lesseq_allperm link_set_to_booleans longest_change lt map max_index max_n max_nvalue max_size_set_of_consecutive_var maximum

a b c d e g h i k l m

maximum_modulo meet_sboxes min_index min_n min_nvalue min_size_set_of_consecutive_var minimum minimum_except_0 minimum_greater_than minimum_modulo minimum_weight_alldifferent nand nclass neq neq_cst nequivalence next_element next_greater_element ninterval no_peak no_valley non_overlap_sboxes nor not_all_equal not_in npair nset_of_consecutive_values nvalue nvalue_on_intersection nvalues nvalues_except_0 nvector nvectors
  • pen_alldifferent
  • pen_among
  • pen_atleast
  • pen_atmost
  • pen_global_cardinality
  • pen_global_cardinality_low_up
  • pen_maximum
  • pen_minimum
  • pposite_sign
  • r
  • rchard
  • rdered_atleast_nvector
  • rdered_atmost_nvector
  • rdered_global_cardinality
  • rdered_nvector
  • rth_link_ori_siz_end
  • rth_on_the_ground
  • rth_on_top_of_orth
  • rths_are_connected
  • verlap_sboxes
path path_from_to pattern peak period period_except_0 place_in_pyramid polyomino power product_ctr proper_forest range_ctr relaxed_sliding_sum roots same same_and_global_cardinality same_and_global_cardinality_low_up same_intersection same_interval same_modulo same_partition same_sign scalar_product sequence_folding set_value_precede shift size_max_seq_alldifferent size_max_starting_seq_alldifferent sliding_card_skip0 sliding_distribution sliding_sum sliding_time_window sliding_time_window_from_start sliding_time_window_sum smooth soft_all_equal_max_var soft_all_equal_min_ctr soft_all_equal_min_var soft_alldifferent_ctr soft_alldifferent_var soft_cumulative soft_same_interval_var soft_same_modulo_var soft_same_partition_var soft_same_var soft_used_by_interval_var soft_used_by_modulo_var soft_used_by_partition_var soft_used_by_var sort sort_permutation stable_compatibility stage_element stretch_circuit stretch_path stretch_path_partition strict_lex2 strictly_decreasing strictly_increasing strongly_connected subgraph_isomorphism sum sum_ctr sum_free sum_of_weights_of_distinct_values sum_set symmetric symmetric_alldifferent symmetric_cardinality symmetric_gcc temporal_path tour track tree tree_range tree_resource two_layer_edge_crossing two_orth_are_in_contact two_orth_column two_orth_do_not_overlap two_orth_include used_by used_by_interval used_by_modulo used_by_partition uses valley vec_eq_tuple visible weighted_partial_alldiff xor

n

  • p

r s t u v w x

W3C: XHTML - last update: 2010-12-6. SD.
slide-3
SLIDE 3 abs_value all_differ_from_at_least_k_pos all_equal all_min_dist alldifferent alldifferent_between_sets alldifferent_consecutive_values alldifferent_cst alldifferent_except_0 alldifferent_interval alldifferent_modulo alldifferent_on_intersection alldifferent_partition alldifferent_same_value allperm among among_diff_0 among_interval among_low_up among_modulo among_seq among_var and arith arith_or arith_sliding assign_and_counts assign_and_nvalues atleast atleast_nvalue atleast_nvector atmost atmost1 atmost_nvalue atmost_nvector balance balance_interval balance_modulo balance_partition between_min_max bin_packing bin_packing_capa binary_tree bipartite calendar cardinality_atleast cardinality_atmost cardinality_atmost_partition change change_continuity change_pair change_partition circuit circuit_cluster circular_change clause_and clause_or clique colored_matrix coloured_cumulative coloured_cumulatives common common_interval common_modulo common_partition cond_lex_cost cond_lex_greater cond_lex_greatereq cond_lex_less cond_lex_lesseq connect_points connected consecutive_groups_of_ones consecutive_values contains_sboxes correspondence count counts coveredby_sboxes covers_sboxes crossing cumulative cumulative_convex cumulative_product cumulative_two_d cumulative_with_level_of_priority cumulatives cutset cycle cycle_card_on_path cycle_or_accessibility cycle_resource cyclic_change cyclic_change_joker dag decreasing deepest_valley derangement differ_from_at_least_k_pos diffn diffn_column diffn_include discrepancy disj disjoint disjoint_sboxes disjoint_tasks disjunctive distance distance_between distance_change dom_reachability domain domain_constraint elem elem_from_to element element_greatereq element_lesseq element_matrix element_product element_sparse elementn elements elements_alldifferent elements_sparse eq eq_cst eq_set equal_sboxes equivalent exactly gcd geost geost_time geq geq_cst global_cardinality global_cardinality_low_up global_cardinality_low_up_no_loop global_cardinality_no_loop global_cardinality_with_costs global_contiguity golomb graph_crossing graph_isomorphism group group_skip_isolated_item gt highest_peak imply in in_interval in_interval_reified in_intervals in_relation in_same_partition in_set increasing increasing_global_cardinality increasing_nvalue increasing_nvalue_chain indexed_sum inflexion inside_sboxes int_value_precede int_value_precede_chain interval_and_count interval_and_sum inverse inverse_offset inverse_set inverse_within_range ith_pos_different_from_0 k_alldifferent k_cut k_disjoint k_same k_same_interval k_same_modulo k_same_partition k_used_by k_used_by_interval k_used_by_modulo k_used_by_partition length_first_sequence length_last_sequence leq leq_cst lex2 lex_alldifferent lex_between lex_chain_less lex_chain_lesseq lex_different lex_equal lex_greater lex_greatereq lex_less lex_lesseq lex_lesseq_allperm link_set_to_booleans longest_change lt map max_index max_n max_nvalue max_size_set_of_consecutive_var maximum

a b c d e g h i k l m

maximum_modulo meet_sboxes min_index min_n min_nvalue min_size_set_of_consecutive_var minimum minimum_except_0 minimum_greater_than minimum_modulo minimum_weight_alldifferent nand nclass neq neq_cst nequivalence next_element next_greater_element ninterval no_peak no_valley non_overlap_sboxes nor not_all_equal not_in npair nset_of_consecutive_values nvalue nvalue_on_intersection nvalues nvalues_except_0 nvector nvectors
  • pen_alldifferent
  • pen_among
  • pen_atleast
  • pen_atmost
  • pen_global_cardinality
  • pen_global_cardinality_low_up
  • pen_maximum
  • pen_minimum
  • pposite_sign
  • r
  • rchard
  • rdered_atleast_nvector
  • rdered_atmost_nvector
  • rdered_global_cardinality
  • rdered_nvector
  • rth_link_ori_siz_end
  • rth_on_the_ground
  • rth_on_top_of_orth
  • rths_are_connected
  • verlap_sboxes
path path_from_to pattern peak period period_except_0 place_in_pyramid polyomino power product_ctr proper_forest range_ctr relaxed_sliding_sum roots same same_and_global_cardinality same_and_global_cardinality_low_up same_intersection same_interval same_modulo same_partition same_sign scalar_product sequence_folding set_value_precede shift size_max_seq_alldifferent size_max_starting_seq_alldifferent sliding_card_skip0 sliding_distribution sliding_sum sliding_time_window sliding_time_window_from_start sliding_time_window_sum smooth soft_all_equal_max_var soft_all_equal_min_ctr soft_all_equal_min_var soft_alldifferent_ctr soft_alldifferent_var soft_cumulative soft_same_interval_var soft_same_modulo_var soft_same_partition_var soft_same_var soft_used_by_interval_var soft_used_by_modulo_var soft_used_by_partition_var soft_used_by_var sort sort_permutation stable_compatibility stage_element stretch_circuit stretch_path stretch_path_partition strict_lex2 strictly_decreasing strictly_increasing strongly_connected subgraph_isomorphism sum sum_ctr sum_free sum_of_weights_of_distinct_values sum_set symmetric symmetric_alldifferent symmetric_cardinality symmetric_gcc temporal_path tour track tree tree_range tree_resource two_layer_edge_crossing two_orth_are_in_contact two_orth_column two_orth_do_not_overlap two_orth_include used_by used_by_interval used_by_modulo used_by_partition uses valley vec_eq_tuple visible weighted_partial_alldiff xor

n

  • p

r s t u v w x

W3C: XHTML - last update: 2010-12-6. SD.

354 global constraints!

slide-4
SLIDE 4 abs_value all_differ_from_at_least_k_pos all_equal all_min_dist alldifferent alldifferent_between_sets alldifferent_consecutive_values alldifferent_cst alldifferent_except_0 alldifferent_interval alldifferent_modulo alldifferent_on_intersection alldifferent_partition alldifferent_same_value allperm among among_diff_0 among_interval among_low_up among_modulo among_seq among_var and arith arith_or arith_sliding assign_and_counts assign_and_nvalues atleast atleast_nvalue atleast_nvector atmost atmost1 atmost_nvalue atmost_nvector balance balance_interval balance_modulo balance_partition between_min_max bin_packing bin_packing_capa binary_tree bipartite calendar cardinality_atleast cardinality_atmost cardinality_atmost_partition change change_continuity change_pair change_partition circuit circuit_cluster circular_change clause_and clause_or clique colored_matrix coloured_cumulative coloured_cumulatives common common_interval common_modulo common_partition cond_lex_cost cond_lex_greater cond_lex_greatereq cond_lex_less cond_lex_lesseq connect_points connected consecutive_groups_of_ones consecutive_values contains_sboxes correspondence count counts coveredby_sboxes covers_sboxes crossing cumulative cumulative_convex cumulative_product cumulative_two_d cumulative_with_level_of_priority cumulatives cutset cycle cycle_card_on_path cycle_or_accessibility cycle_resource cyclic_change cyclic_change_joker dag decreasing deepest_valley derangement differ_from_at_least_k_pos diffn diffn_column diffn_include discrepancy disj disjoint disjoint_sboxes disjoint_tasks disjunctive distance distance_between distance_change dom_reachability domain domain_constraint elem elem_from_to element element_greatereq element_lesseq element_matrix element_product element_sparse elementn elements elements_alldifferent elements_sparse eq eq_cst eq_set equal_sboxes equivalent exactly gcd geost geost_time geq geq_cst global_cardinality global_cardinality_low_up global_cardinality_low_up_no_loop global_cardinality_no_loop global_cardinality_with_costs global_contiguity golomb graph_crossing graph_isomorphism group group_skip_isolated_item gt highest_peak imply in in_interval in_interval_reified in_intervals in_relation in_same_partition in_set increasing increasing_global_cardinality increasing_nvalue increasing_nvalue_chain indexed_sum inflexion inside_sboxes int_value_precede int_value_precede_chain interval_and_count interval_and_sum inverse inverse_offset inverse_set inverse_within_range ith_pos_different_from_0 k_alldifferent k_cut k_disjoint k_same k_same_interval k_same_modulo k_same_partition k_used_by k_used_by_interval k_used_by_modulo k_used_by_partition length_first_sequence length_last_sequence leq leq_cst lex2 lex_alldifferent lex_between lex_chain_less lex_chain_lesseq lex_different lex_equal lex_greater lex_greatereq lex_less lex_lesseq lex_lesseq_allperm link_set_to_booleans longest_change lt map max_index max_n max_nvalue max_size_set_of_consecutive_var maximum

a b c d e g h i k l m

maximum_modulo meet_sboxes min_index min_n min_nvalue min_size_set_of_consecutive_var minimum minimum_except_0 minimum_greater_than minimum_modulo minimum_weight_alldifferent nand nclass neq neq_cst nequivalence next_element next_greater_element ninterval no_peak no_valley non_overlap_sboxes nor not_all_equal not_in npair nset_of_consecutive_values nvalue nvalue_on_intersection nvalues nvalues_except_0 nvector nvectors
  • pen_alldifferent
  • pen_among
  • pen_atleast
  • pen_atmost
  • pen_global_cardinality
  • pen_global_cardinality_low_up
  • pen_maximum
  • pen_minimum
  • pposite_sign
  • r
  • rchard
  • rdered_atleast_nvector
  • rdered_atmost_nvector
  • rdered_global_cardinality
  • rdered_nvector
  • rth_link_ori_siz_end
  • rth_on_the_ground
  • rth_on_top_of_orth
  • rths_are_connected
  • verlap_sboxes
path path_from_to pattern peak period period_except_0 place_in_pyramid polyomino power product_ctr proper_forest range_ctr relaxed_sliding_sum roots same same_and_global_cardinality same_and_global_cardinality_low_up same_intersection same_interval same_modulo same_partition same_sign scalar_product sequence_folding set_value_precede shift size_max_seq_alldifferent size_max_starting_seq_alldifferent sliding_card_skip0 sliding_distribution sliding_sum sliding_time_window sliding_time_window_from_start sliding_time_window_sum smooth soft_all_equal_max_var soft_all_equal_min_ctr soft_all_equal_min_var soft_alldifferent_ctr soft_alldifferent_var soft_cumulative soft_same_interval_var soft_same_modulo_var soft_same_partition_var soft_same_var soft_used_by_interval_var soft_used_by_modulo_var soft_used_by_partition_var soft_used_by_var sort sort_permutation stable_compatibility stage_element stretch_circuit stretch_path stretch_path_partition strict_lex2 strictly_decreasing strictly_increasing strongly_connected subgraph_isomorphism sum sum_ctr sum_free sum_of_weights_of_distinct_values sum_set symmetric symmetric_alldifferent symmetric_cardinality symmetric_gcc temporal_path tour track tree tree_range tree_resource two_layer_edge_crossing two_orth_are_in_contact two_orth_column two_orth_do_not_overlap two_orth_include used_by used_by_interval used_by_modulo used_by_partition uses valley vec_eq_tuple visible weighted_partial_alldiff xor

n

  • p

r s t u v w x

W3C: XHTML - last update: 2010-12-6. SD.

354 global constraints! Do we need them all?

slide-5
SLIDE 5

CP’10 Tutorial on Decompositions by Christian Bessiere

Let’s decompose!

AllDifferent ⇒

slide-6
SLIDE 6

CP’10 Tutorial on Decompositions by Christian Bessiere

Let’s decompose!

AllDifferent ⇒ Operational = allow the same propagation Semantic = express the same thing

slide-7
SLIDE 7

CP’10 Tutorial on Decompositions by Christian Bessiere

Let’s decompose!

AllDifferent ⇒ Operational = allow the same propagation Semantic = express the same thing

(expressibility, pp-definability, implementation, ∃-Inv-SAT)

slide-8
SLIDE 8

Example: SAT ≤ 3-SAT

(z1 ∨ z2 ∨ . . . ∨ zk)

  • (z1∨z2∨y1)∧(¯

y1∨z3∨y2)∧(¯ y2∨z4∨y3)∧. . .∧(¯ yk−3∨zk−1∨zk)

slide-9
SLIDE 9

Example: MAX ≤ 3-MAX

MAXk(x1, . . . , xk, m)

✫ ✩ ✪

MAX2(x1, x2, y1) MAX2(y1, x3, y2) MAX2(y2, x4, y3) . . . MAX2(yk−2, xk, m)

slide-10
SLIDE 10

CP’10 Best Paper Award to Ross Willard

Testing expressibility is hard!

slide-11
SLIDE 11

Fields Institute: July & August 2011

Summer Thematic Program on the Mathematics of Constraint Satisfaction

slide-12
SLIDE 12

My Thesis

The Complexity and Expressive Power of Valued Constraints

slide-13
SLIDE 13

My Thesis

The Complexity and Expressive Power of Valued Constraints

slide-14
SLIDE 14

Valued CSPs

Constraint f : Dk → {0, ∞} Valued Constraint f : Dk → {0, ∞} ∪ Q+

slide-15
SLIDE 15

Valued CSPs

Constraint f : Dk → {0, ∞} Valued Constraint f : Dk → {0, ∞} ∪ Q+

t f(t) 000 001 ∞ 010 011 100 ∞ 101 ∞ 110 111

D = {0, 1} k = 3

slide-16
SLIDE 16

Valued CSPs

Constraint f : Dk → {0, ∞} Valued Constraint f : Dk → {0, ∞} ∪ Q+

t f(t) 000 1 001 30 010 011 0.2 100 ∞ 101 ∞ 110 4 111

3 2 D = {0, 1} k = 3

slide-17
SLIDE 17

Valued CSPs

Constraint f : Dk → {0, ∞} Valued Constraint f : Dk → {0, ∞} ∪ Q+

t f(t) 000 1 001 30 010 011 0.2 100 ∞ 101 ∞ 110 4 111

3 2 D = {0, 1} k = 3

Goal: to minimise the sum of all valued constraints

slide-18
SLIDE 18

Why Valued?

Life is not black & white.

slide-19
SLIDE 19

Sustainability Example

Where to place sensors to quickly detect contamination in water distribution networks?

slide-20
SLIDE 20

My Thesis

The Complexity and Expressive Power of Valued Constraints

slide-21
SLIDE 21

My Thesis

The Complexity and Expressive Power of Valued Constraints

slide-22
SLIDE 22

Expressive Power

Goal: to minimise the sum of all valued constraints

slide-23
SLIDE 23

Expressive Power

Goal: to minimise the sum of all valued constraints Given a set of valued constraints L, we define L:

slide-24
SLIDE 24

Expressive Power

Goal: to minimise the sum of all valued constraints Given a set of valued constraints L, we define L: 1. f ∈ L ⇒ f ∈ L

slide-25
SLIDE 25

Expressive Power

Goal: to minimise the sum of all valued constraints Given a set of valued constraints L, we define L: 1. f ∈ L ⇒ f ∈ L 2. f, g ∈ L ⇒ f+g ∈ L

slide-26
SLIDE 26

Expressive Power

Goal: to minimise the sum of all valued constraints Given a set of valued constraints L, we define L: 1. f ∈ L ⇒ f ∈ L 2. f, g ∈ L ⇒ f+g ∈ L 3. g ∈ L f(x1, . . . , xk) = minyg(x1, . . . , xk, y)

  • ⇒ f ∈ L
slide-27
SLIDE 27

Complexity of Expressive Power

L

slide-28
SLIDE 28

Complexity of Expressive Power

L

L

slide-29
SLIDE 29

Complexity of Expressive Power

L

L

VCSP(X) = instances with constraints from X

slide-30
SLIDE 30

Complexity of Expressive Power

L

L

VCSP(X) = instances with constraints from X

(Important) Theorem [Cohen et al.’06]

VCSP(L) ≡p VCSP(L)

slide-31
SLIDE 31

Outline

The Complexity and Expressive Power of Valued Constraints

  • 1. Expressive Power of Valued Constraints
  • 2. Expressive Power of Fixed-Arity Constraints
  • 3. Expressive Power of Submodular Constraints
  • 4. Non-Expressibility of Submodular Constraints
slide-32
SLIDE 32

Outline

The Complexity and Expressive Power of Valued Constraints

  • 1. Expressive Power of Valued Constraints
  • 2. Expressive Power of Fixed-Arity Constraints
  • 3. Expressive Power of Submodular Constraints
  • 4. Non-Expressibility of Submodular Constraints
slide-33
SLIDE 33

Algebraic Theory of Valued Constraints

slide-34
SLIDE 34

Algebraic Theory of Valued Constraints

Theorem

Weighted clone membership is decidable.

slide-35
SLIDE 35

Algebraic Theory of Valued Constraints

Theorem

Weighted clone membership is decidable.

slide-36
SLIDE 36

Algebraic Theory of Valued Constraints

Theorem

Weighted clone membership is decidable.

Páidí Creed

Latest results: Tuesday’s talk on minimal weighted clones!

slide-37
SLIDE 37

Outline

The Complexity and Expressive Power of Valued Constraints

  • 1. Expressive Power of Valued Constraints
  • 2. Expressive Power of Fixed-Arity Constraints
  • 3. Expressive Power of Submodular Constraints
  • 4. Non-Expressibility of Submodular Constraints
slide-38
SLIDE 38

ACP Research Excellence Award 2007 to Rina Dechter

slide-39
SLIDE 39

ACP Research Excellence Award 2007 to Rina Dechter

slide-40
SLIDE 40

ACP Research Excellence Award 2007 to Rina Dechter

slide-41
SLIDE 41

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

slide-42
SLIDE 42

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

Rd,k = relations of arity k on domain d

slide-43
SLIDE 43

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

Rd,k = relations of arity k on domain d

R2,1 R2,2 R2,3 R2 Rmax

2,1 Rmax 2,2

Rmax

2,3

Rmax

2

Rd,1 Rd,2 Rd Rmax

d,1 Rmax d,2

Rmax

d

slide-44
SLIDE 44

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

slide-45
SLIDE 45

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

Gd,k = general-valued constraints of arity ≤ k on domain d

slide-46
SLIDE 46

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

Gd,k = general-valued constraints of arity ≤ k on domain d

G2,1 G2,2 G2,3 G2 Gmax

2,1 Gmax 2,2

Gmax

2,3

Gmax

2

Gd,1 Gd,2 Gd Gmax

d,1 Gmax d,2

Gmax

d

slide-47
SLIDE 47

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

slide-48
SLIDE 48

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

Fd,k = finite-valued constraints of arity ≤ k on domain d

slide-49
SLIDE 49

Fixed-Arity Constraints

What can be expressed by fixed-arity constraints on a fixed domain?

Fd,k = finite-valued constraints of arity ≤ k on domain d

Fd,1 Fd,2 Fd Fmax

d,1 Fmax d,2

Fmax

d,3

. . .

Fmax

d

slide-50
SLIDE 50

Fixed-Arity Results

Theorem

For every d ≥ 3 and f ≥ 2:

  • 1. Rd,1 Rd,2 = Rd

Rmax

d,1 Rmax d,2 = Rmax d

R2,1 R2,2 R2,3 = R2 Rmax

2,1 Rmax 2,2 Rmax 2,3 = Rmax 2

  • 2. Gf,1 Gf,2 = Gf

Gmax

d,1 Gmax d,2 = Gmax d

Gmax

2,1 Gmax 2,2 Gmax 2,3 = Gmax 2

  • 3. Ff,1 Ff,2 = Ff

Fmax

f,1 Fmax f,2 Fmax f,3 Fmax f,4 · · ·

slide-51
SLIDE 51

Fixed-Arity Results

Theorem

For every d ≥ 3 and f ≥ 2:

  • 1. Rd,1 Rd,2 = Rd

Rmax

d,1 Rmax d,2 = Rmax d

R2,1 R2,2 R2,3 = R2 Rmax

2,1 Rmax 2,2 Rmax 2,3 = Rmax 2

  • 2. Gf,1 Gf,2 = Gf

Gmax

d,1 Gmax d,2 = Gmax d

Gmax

2,1 Gmax 2,2 Gmax 2,3 = Gmax 2

  • 3. Ff,1 Ff,2 = Ff

Fmax

f,1 Fmax f,2 Fmax f,3 Fmax f,4 · · ·

slide-52
SLIDE 52

My First CP (2007). . .

  • Crisp constraints correspond precisely to relations.
General con- straints take both finite and infinite values.
  • The collapse for Rmax
d is proved by showing that binary max-closed relations do not have any extra polymorphisms apart from “max-on- a-subset”.
  • The separation for Fmax
d,m, m ≥ 1, is proved by giving an explicit frac- tional polymorphism of Fmax d,m which is not a fractional polymorphism
  • f Fmax
d,m+1.
  • The collapse for Gmax
d is given by a characterisation of fractional poly- morphisms of Gmax d which is proved by the Min-Cut Max-Flow
  • Theorem. Actually, we proved a stronger result: any general max-
closed constraint can be expressed using only binary max-closed re- lations and unary finite-valued max-closed constraints.
  • In the case of Boolean domains, all the expressibility results, known
and new, hold with ternary constraints, and not binary. More Details
  • Rd,m (Fd,m, Gd,m respectively) denotes the set of all crisp (finite-
valued, general respectively) constraints over a domain of size d of arity at most m, and Rd = ∪m≥0Rd,m, Fd = ∪m≥0Fd,m, Gd = ∪m≥0Gd,m. x y z u1 u2 u3 µ1 v1 v2 v3 v4 v5 v6 µ3 w µ5 φ0 φ0 φ0 φ0 φ0 φ0 φ1 φ2 φ2 φ1 φ1 φ2 φ0 φ0 φ0 φ1 φ0 φ2 φ0 φ0 A gadget for φ = (#0)2 over a three-element domain. Our Results

We studied an important subset of valued constraints which are monotonic and called max-closed. By investigating the algebraic properties of max-closed constraints, we showed that:

  • Binary crisp max-closed constraints can express any crisp max-closed constraint of an arbitrary arity.
  • Binary general max-closed constraints can express any general max-closed constraint of an arbitrary

arity.

  • For every m ≥ 1, finite-valued max-closed constraints of arity up to m cannot express all finite-

valued max-closed constraints of arity m + 1.

Gmax d,1 Gmax d,2 Gmax d Rmax d,1 Rmax d,2 Rmax d Fmax d,1 Fmax d,2 Fmax d,3

. . .

Fmax d v1 v2 v3 v4 =3 =3 =3 =3 =3 = Background
  • For L, a set of constraints, the expressive power of L, denoted L, is a set of constraints containing L and
closed under composition and projection.
  • L is important in practice, and has the same complexity as L, i.e., VCSP(L) ≡log
m VCSP(L).
  • L of classical constraints is determined by algebraic properties of constraints called polymorphisms.
  • L of valued constraints has been recently shown to be determined by algebraic properties of valued constraints
called feasibility polymorphisms and fractional polymorphisms.
  • Consider the expressive power of crisp, finite-valued, and general valued constraints up to some fixed arity.
In the crisp case, it is known that binary relations can express any relation of an arbitrary arity. We have recently shown the same result for finite-valued and general constraints. Peter G. Jeavons & Stanislav ˇ Zivn´ y University of Oxford, UK {peter.jeavons,stanislav.zivny}@comlab.ox.ac.uk David A. Cohen Royal Holloway, London, UK d.cohen@rhul.ac.uk

The Expressive Power of Valued Constraints: Hierarchies and Collapses

slide-53
SLIDE 53

My First CP (2007). . .

  • Crisp constraints correspond precisely to relations.
General con- straints take both finite and infinite values.
  • The collapse for Rmax
d is proved by showing that binary max-closed relations do not have any extra polymorphisms apart from “max-on- a-subset”.
  • The separation for Fmax
d,m, m ≥ 1, is proved by giving an explicit frac- tional polymorphism of Fmax d,m which is not a fractional polymorphism
  • f Fmax
d,m+1.
  • The collapse for Gmax
d is given by a characterisation of fractional poly- morphisms of Gmax d which is proved by the Min-Cut Max-Flow
  • Theorem. Actually, we proved a stronger result: any general max-
closed constraint can be expressed using only binary max-closed re- lations and unary finite-valued max-closed constraints.
  • In the case of Boolean domains, all the expressibility results, known
and new, hold with ternary constraints, and not binary. More Details
  • Rd,m (Fd,m, Gd,m respectively) denotes the set of all crisp (finite-
valued, general respectively) constraints over a domain of size d of arity at most m, and Rd = ∪m≥0Rd,m, Fd = ∪m≥0Fd,m, Gd = ∪m≥0Gd,m. x y z u1 u2 u3 µ1 v1 v2 v3 v4 v5 v6 µ3 w µ5 φ0 φ0 φ0 φ0 φ0 φ0 φ1 φ2 φ2 φ1 φ1 φ2 φ0 φ0 φ0 φ1 φ0 φ2 φ0 φ0 A gadget for φ = (#0)2 over a three-element domain. Our Results

We studied an important subset of valued constraints which are monotonic and called max-closed. By investigating the algebraic properties of max-closed constraints, we showed that:

  • Binary crisp max-closed constraints can express any crisp max-closed constraint of an arbitrary arity.
  • Binary general max-closed constraints can express any general max-closed constraint of an arbitrary

arity.

  • For every m ≥ 1, finite-valued max-closed constraints of arity up to m cannot express all finite-

valued max-closed constraints of arity m + 1.

Gmax d,1 Gmax d,2 Gmax d Rmax d,1 Rmax d,2 Rmax d Fmax d,1 Fmax d,2 Fmax d,3

. . .

Fmax d v1 v2 v3 v4 =3 =3 =3 =3 =3 = Background
  • For L, a set of constraints, the expressive power of L, denoted L, is a set of constraints containing L and
closed under composition and projection.
  • L is important in practice, and has the same complexity as L, i.e., VCSP(L) ≡log
m VCSP(L).
  • L of classical constraints is determined by algebraic properties of constraints called polymorphisms.
  • L of valued constraints has been recently shown to be determined by algebraic properties of valued constraints
called feasibility polymorphisms and fractional polymorphisms.
  • Consider the expressive power of crisp, finite-valued, and general valued constraints up to some fixed arity.
In the crisp case, it is known that binary relations can express any relation of an arbitrary arity. We have recently shown the same result for finite-valued and general constraints. Peter G. Jeavons & Stanislav ˇ Zivn´ y University of Oxford, UK {peter.jeavons,stanislav.zivny}@comlab.ox.ac.uk David A. Cohen Royal Holloway, London, UK d.cohen@rhul.ac.uk

The Expressive Power of Valued Constraints: Hierarchies and Collapses

Bruno Zanuttini

slide-54
SLIDE 54

Outline

The Complexity and Expressive Power of Valued Constraints

  • 1. Expressive Power of Valued Constraints
  • 2. Expressive Power of Fixed-Arity Constraints
  • 3. Expressive Power of Submodular Constraints
  • 4. Non-Expressibility of Submodular Constraints
slide-55
SLIDE 55

Submodularity

set function f : 2V → Q

“adding an element to a smaller set

helps more than adding it to a larger set”

slide-56
SLIDE 56

Submodularity

set function f : 2V → Q

“adding an element to a smaller set

helps more than adding it to a larger set”

Definition

f is submodular if for all A ⊆ B ⊆ V and x ∈ V \ B: f(A ∪ {x}) − f(A) ≥ f(B ∪ {x}) − f(B)

slide-57
SLIDE 57

Submodularity, cont’d

x f(x) f(x)

slide-58
SLIDE 58

Submodularity, cont’d

x f(x) f(x)

slide-59
SLIDE 59

Submodularity, cont’d

x f(x) f(x) min f(x) . . . . . . . . . . . . . . . . . . . . . . . polynomial max f(x) . . . . . . . . NP-C, good approximation

slide-60
SLIDE 60

Submodular Constraints

◮ VCSP(Lsub) solvable in O(n6) ◮ VCSP(Lsub,2) solvable in O(n3) (≈ Min-Cut)

slide-61
SLIDE 61

Submodular Constraints

◮ VCSP(Lsub) solvable in O(n6) ◮ VCSP(Lsub,2) solvable in O(n3) (≈ Min-Cut)

What submodular constraints are expressible by binary submodular constraints?

slide-62
SLIDE 62

Submodular Constraints

◮ VCSP(Lsub) solvable in O(n6) ◮ VCSP(Lsub,2) solvable in O(n3) (≈ Min-Cut)

What submodular constraints are expressible by binary submodular constraints?

Theorem

FANS of all arities are expressible by Lsub,2.

slide-63
SLIDE 63

Submodular Constraints

◮ VCSP(Lsub) solvable in O(n6) ◮ VCSP(Lsub,2) solvable in O(n3) (≈ Min-Cut)

What submodular constraints are expressible by binary submodular constraints?

Theorem

FANS of all arities are expressible by Lsub,2.

◮ includes all previously known cases

slide-64
SLIDE 64

Fan?

slide-65
SLIDE 65

Example of an Upper Fan of Arity 4

  • 1
  • 1
  • 1

−2 −1 −1 −1 −2

slide-66
SLIDE 66

Outline

The Complexity and Expressive Power of Valued Constraints

  • 1. Expressive Power of Valued Constraints
  • 2. Expressive Power of Fixed-Arity Constraints
  • 3. Expressive Power of Submodular Constraints
  • 4. Non-Expressibility of Submodular Constraints
slide-67
SLIDE 67

Non-Expressibility Results

Are all submodular constraints expressible by binary submodular constraints?

slide-68
SLIDE 68

Non-Expressibility Results

Are all submodular constraints expressible by binary submodular constraints? Theorem

For every f ∈ Lsub,4: f ∈ Lsub,2 ⇔ f ∈ Cone(Lfans,4).

slide-69
SLIDE 69

Non-Expressibility Results

Are all submodular constraints expressible by binary submodular constraints? Theorem

For every f ∈ Lsub,4: f ∈ Lsub,2 ⇔ f ∈ Cone(Lfans,4).

slide-70
SLIDE 70

Non-Expressibility Results

Are all submodular constraints expressible by binary submodular constraints? Theorem

For every f ∈ Lsub,4: f ∈ Lsub,2 ⇔ f ∈ Cone(Lfans,4).

Corollary

Lsub,2 Lsub,4.

slide-71
SLIDE 71

Non-Expressibility Results

Are all submodular constraints expressible by binary submodular constraints? Theorem

For every f ∈ Lsub,4: f ∈ Lsub,2 ⇔ f ∈ Cone(Lfans,4).

Corollary

Lsub,2 Lsub,4.

◮ other algorithmic techniques needed

slide-72
SLIDE 72

Outline

The Complexity and Expressive Power of Valued Constraints

  • 1. Expressive Power of Valued Constraints
  • 2. Expressive Power of Fixed-Arity Constraints
  • 3. Expressive Power of Submodular Constraints
  • 4. Non-Expressibility of Submodular Constraints
slide-73
SLIDE 73

Thanks to the supervisor

slide-74
SLIDE 74

Thanks to the supervisor

Pete Jeavons

slide-75
SLIDE 75

Thanks to the supervisor(s)

Dave Cohen Pete Jeavons Martin Cooper

slide-76
SLIDE 76

Thanks to the