021_1023_1203_1230_2013_2103_2130_2301_2310_3102_3210

Counting sequence:
1, 1, 2, 5, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3

Generating function in Maple syntax:
(x^5+x^4-3*x^3-x^2-1)/(x-1)

Generating function in latex syntax:
\frac{x^{5}+x^{4}-3 x^{3}-x^{2}-1}{x -1}

Generating function in sympy syntax:
(x**5 + x**4 - 3*x**3 - x**2 - 1)/(x - 1)

Implicit equation for the generating function in Maple syntax:
(1-x)*F(x)+x^5+x^4-3*x^3-x^2-1 = 0

Implicit equation for the generating function in latex syntax:
\left(1-x \right) F \! \left(x \right)+x^{5}+x^{4}-3 x^{3}-x^{2}-1 = 0

Explicit closed form in Maple syntax:
piecewise(Or(n = 0,n = 1),1,n = 2,2,n = 3,5,n = 4,4,3)

Explicit closed form in latex syntax:
\left\{\begin{array}{cc}1 & n =0\text{ or } n =1 \\ 2 & n =2 \\ 5 & n =3 \\ 4 & n =4 \\ 3 & \mathit{\text{otherwise}} \end{array}\right.

Recurrence in maple format:
a(0) = 1
a(1) = 1
a(2) = 2
a(3) = 5
a(4) = 4
a(5) = 3
a(n) = 3, n >= 6

Recurrence in latex format:
a \! \left(0\right) = 1
a \! \left(1\right) = 1
a \! \left(2\right) = 2
a \! \left(3\right) = 5
a \! \left(4\right) = 4
a \! \left(5\right) = 3
a \! \left(n \right) = 3, \quad n \geq 6

Specification 1
Strategy pack name: point_placements
Tree: https://permpal.com/tree/13260/
System of equations in Maple syntax:
F[0,x] = F[1,x]+F[2,x]
F[1,x] = 1
F[2,x] = F[3,x]
F[3,x] = F[4,x]*F[5,x]
F[4,x] = x
F[5,x] = F[6,x]+F[9,x]
F[6,x] = F[1,x]+F[7,x]
F[7,x] = F[8,x]
F[8,x] = F[4,x]*F[6,x]
F[9,x] = F[10,x]+F[17,x]
F[10,x] = F[11,x]
F[11,x] = F[12,x]*F[4,x]
F[12,x] = F[13,x]+F[6,x]
F[13,x] = F[14,x]+F[7,x]
F[14,x] = F[15,x]
F[15,x] = F[16,x]*F[4,x]
F[16,x] = F[4,x]
F[17,x] = F[15,x]+F[18,x]+F[19,x]
F[18,x] = 0
F[19,x] = F[20,x]*F[4,x]
F[20,x] = F[4,x]
System of equations in latex syntax:
F_{0}\! \left(x \right) = F_{1}\! \left(x \right)+F_{2}\! \left(x \right)
F_{1}\! \left(x \right) = 1
F_{2}\! \left(x \right) = F_{3}\! \left(x \right)
F_{3}\! \left(x \right) = F_{4}\! \left(x \right) F_{5}\! \left(x \right)
F_{4}\! \left(x \right) = x
F_{5}\! \left(x \right) = F_{6}\! \left(x \right)+F_{9}\! \left(x \right)
F_{6}\! \left(x \right) = F_{1}\! \left(x \right)+F_{7}\! \left(x \right)
F_{7}\! \left(x \right) = F_{8}\! \left(x \right)
F_{8}\! \left(x \right) = F_{4}\! \left(x \right) F_{6}\! \left(x \right)
F_{9}\! \left(x \right) = F_{10}\! \left(x \right)+F_{17}\! \left(x \right)
F_{10}\! \left(x \right) = F_{11}\! \left(x \right)
F_{11}\! \left(x \right) = F_{12}\! \left(x \right) F_{4}\! \left(x \right)
F_{12}\! \left(x \right) = F_{13}\! \left(x \right)+F_{6}\! \left(x \right)
F_{13}\! \left(x \right) = F_{14}\! \left(x \right)+F_{7}\! \left(x \right)
F_{14}\! \left(x \right) = F_{15}\! \left(x \right)
F_{15}\! \left(x \right) = F_{16}\! \left(x \right) F_{4}\! \left(x \right)
F_{16}\! \left(x \right) = F_{4}\! \left(x \right)
F_{17}\! \left(x \right) = F_{15}\! \left(x \right)+F_{18}\! \left(x \right)+F_{19}\! \left(x \right)
F_{18}\! \left(x \right) = 0
F_{19}\! \left(x \right) = F_{20}\! \left(x \right) F_{4}\! \left(x \right)
F_{20}\! \left(x \right) = F_{4}\! \left(x \right)
System of equations in sympy syntax:
Eq(F_0(x), F_1(x) + F_2(x))
Eq(F_1(x), 1)
Eq(F_2(x), F_3(x))
Eq(F_3(x), F_4(x)*F_5(x))
Eq(F_4(x), x)
Eq(F_5(x), F_6(x) + F_9(x))
Eq(F_6(x), F_1(x) + F_7(x))
Eq(F_7(x), F_8(x))
Eq(F_8(x), F_4(x)*F_6(x))
Eq(F_9(x), F_10(x) + F_17(x))
Eq(F_10(x), F_11(x))
Eq(F_11(x), F_12(x)*F_4(x))
Eq(F_12(x), F_13(x) + F_6(x))
Eq(F_13(x), F_14(x) + F_7(x))
Eq(F_14(x), F_15(x))
Eq(F_15(x), F_16(x)*F_4(x))
Eq(F_16(x), F_4(x))
Eq(F_17(x), F_15(x) + F_18(x) + F_19(x))
Eq(F_18(x), 0)
Eq(F_19(x), F_20(x)*F_4(x))
Eq(F_20(x), F_4(x))
Pack JSON: {'expansion_strats': [[{'ignore_parent': False, 'maxreqlen': 1, 'one_cell_only': False}, {'dirs': [0, 1, 2, 3], 'ignore_parent': False, 'partial': False, 'point_only': False}]], 'inferral_strats': [{'ignore_parent': True, 'inferrable': True, 'possibly_empty': False, 'workable': True}, {}], 'initial_strats': [{'ignore_parent': True, 'interleaving': None, 'tracked': False, 'unions': False, 'workable': True}], 'iterative': False, 'name': 'point_placements', 'symmetries': [], 'ver_strats': [{}, {'ignore_parent': False}, {'ignore_parent': False, 'symmetry': False}, {'ignore_parent': False, 'symmetry': False}]}
Specification JSON: {'root': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 0, 1, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': []}, 'rules': [{'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 0, 1, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 0, 1, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 0], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [0, 1, 2], 'pos': [[1, 0], [1, 0], [1, 2]]}, {'patt': [0, 1, 2], 'pos': [[1, 0], [1, 2], [1, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[1, 0], [1, 0], [1, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [1, 0], [1, 2]]}, {'patt': [1, 2, 0], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [1, 2, 0], 'pos': [[1, 2], [1, 2], [1, 0]]}, {'patt': [2, 0, 1], 'pos': [[1, 2], [1, 0], [1, 0]]}, {'patt': [2, 1, 0], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [2, 1, 0], 'pos': [[1, 2], [1, 0], [1, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[1, 0], [1, 0], [1, 0], [1, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[1, 0], [1, 0], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 1]], [[1, 0], [1, 2]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 0], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 0], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 0], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}], [{'patt': [0], 'pos': [[0, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 0], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 1]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 0]], [[1, 1]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': []}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 0], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 2, 0], 'pos': [[1, 2], [1, 2], [1, 0]]}, {'patt': [2, 0, 1], 'pos': [[1, 2], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 1]], [[1, 0], [1, 2]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': []}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}], [{'patt': [0], 'pos': [[0, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 1]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 2]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 3]]}, {'patt': [0, 1], 'pos': [[1, 2], [1, 3]]}, {'patt': [0, 1], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 0], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 2, 0], 'pos': [[1, 2], [1, 2], [1, 0]]}, {'patt': [2, 0, 1], 'pos': [[1, 2], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}], [{'patt': [0], 'pos': [[1, 3]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 0]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 0], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}], [{'patt': [0], 'pos': [[1, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [0, 1, 2], 'pos': [[0, 0], [0, 1], [0, 1]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [0, 2, 1], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 1]]}, {'patt': [1, 0, 2], 'pos': [[0, 1], [0, 0], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 0], [0, 1], [0, 0]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 1], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}], [{'patt': [0], 'pos': [[0, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 2, 'gps': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'include_empty': True, 'indices': [0, 0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 2]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 2]]}, {'patt': [0, 1], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[0, 3]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 2]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 3]]}, {'patt': [0, 1], 'pos': [[1, 2], [1, 3]]}, {'patt': [0, 1], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 0], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 2]]}, {'patt': [1, 0], 'pos': [[1, 3], [1, 3]]}, {'patt': [1, 2, 0], 'pos': [[1, 2], [1, 2], [1, 0]]}, {'patt': [2, 0, 1], 'pos': [[1, 2], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}], [{'patt': [0], 'pos': [[1, 3]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 1]], [[1, 0], [1, 2], [1, 3]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 0]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 0], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}], [{'patt': [0], 'pos': [[1, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.factor', 'ignore_parent': True, 'partition': [[[0, 1]], [[1, 0], [1, 2]]], 'strategy_class': 'FactorStrategy', 'workable': True}}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [0, 1, 2], 'pos': [[1, 0], [1, 0], [1, 2]]}, {'patt': [0, 1, 2], 'pos': [[1, 0], [1, 2], [1, 2]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [0, 2, 1], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [1, 0, 2], 'pos': [[1, 0], [1, 0], [1, 2]]}, {'patt': [1, 0, 2], 'pos': [[1, 2], [1, 0], [1, 2]]}, {'patt': [1, 2, 0], 'pos': [[1, 0], [1, 2], [1, 0]]}, {'patt': [1, 2, 0], 'pos': [[1, 2], [1, 2], [1, 0]]}, {'patt': [2, 0, 1], 'pos': [[1, 2], [1, 0], [1, 0]]}, {'patt': [2, 1, 0], 'pos': [[1, 0], [1, 0], [1, 0]]}, {'patt': [2, 1, 0], 'pos': [[1, 2], [1, 0], [1, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[1, 0], [1, 0], [1, 0], [1, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[1, 0], [1, 0], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 0, 1, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0, 3], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [3, 2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 2, 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'include_empty': True, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 1]]}, {'patt': [0], 'pos': [[1, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[1, 1], [1, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 2, 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'include_empty': True, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 0], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}, {'patt': [1, 2, 0], 'pos': [[1, 2], [1, 2], [1, 0]]}, {'patt': [2, 0, 1], 'pos': [[1, 2], [1, 0], [1, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 2, 1], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 0, 2], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [2, 1, 0], 'pos': [[0, 0], [0, 0], [0, 0]]}, {'patt': [1, 2, 3, 0], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}, {'patt': [2, 3, 0, 1], 'pos': [[0, 0], [0, 0], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 2, 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': False, 'include_empty': True, 'indices': [0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 2]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 2]]}, {'patt': [0, 1], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}], [{'patt': [0], 'pos': [[0, 2]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 2]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 2]]}, {'patt': [0, 1], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 2], [0, 2]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 2]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, 'rule_class': 'EquivalenceRule'}, {'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}], [{'patt': [0], 'pos': [[0, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 0]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}], [{'patt': [0], 'pos': [[0, 1]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_insertion', 'gps': [{'patt': [0], 'pos': [[0, 1]]}], 'ignore_parent': True, 'strategy_class': 'RequirementInsertionStrategy'}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'rule_class': 'EquivalencePathRule', 'rules': [{'class_module': 'comb_spec_searcher.strategies.rule', 'original_rule': {'children': [{'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 2]]}, {'patt': [0], 'pos': [[1, 1]]}, {'patt': [0, 1], 'pos': [[0, 1], [0, 1]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 0]]}, {'patt': [0, 1], 'pos': [[1, 0], [1, 2]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 0], 'pos': [[1, 0], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 0]]}, {'patt': [1, 0], 'pos': [[1, 2], [1, 2]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 1]]}], [{'patt': [0], 'pos': [[1, 0]]}]]}], 'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 1]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 1], [0, 1]]}, {'patt': [1, 2, 0], 'pos': [[0, 1], [0, 1], [0, 0]]}, {'patt': [2, 0, 1], 'pos': [[0, 1], [0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}], [{'patt': [0], 'pos': [[0, 1]]}]]}, 'rule_class': 'Rule', 'strategy': {'class_module': 'tilings.strategies.requirement_placement', 'direction': 2, 'gps': [{'patt': [0], 'pos': [[0, 0]]}, {'patt': [0], 'pos': [[0, 1]]}], 'ignore_parent': False, 'include_empty': True, 'indices': [0, 0], 'own_col': True, 'own_row': True, 'strategy_class': 'RequirementPlacementStrategy'}}, 'rule_class': 'EquivalenceRule'}]}, {'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0], 'pos': [[0, 0]]}], 'requirements': []}, 'rule_class': 'VerificationRule', 'strategy': {'class_module': 'tilings.strategies.verification', 'strategy_class': 'BasicVerificationStrategy'}}, {'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [0, 1], 'pos': [[0, 0], [0, 0]]}, {'patt': [1, 0], 'pos': [[0, 0], [0, 0]]}], 'requirements': [[{'patt': [0], 'pos': [[0, 0]]}]]}, 'rule_class': 'VerificationRule', 'strategy': {'class_module': 'tilings.strategies.verification', 'strategy_class': 'BasicVerificationStrategy'}}, {'class_module': 'comb_spec_searcher.strategies.rule', 'comb_class': {'assumptions': [], 'class_module': 'tilings.tiling', 'comb_class': 'Tiling', 'obstructions': [{'patt': [], 'pos': []}], 'requirements': []}, 'rule_class': 'VerificationRule', 'strategy': {'class_module': 'comb_spec_searcher.strategies.strategy', 'strategy_class': 'EmptyStrategy'}}]}