0123_0132_0231_1203
Counting sequence:
1, 1, 2, 6, 20, 68, 234, 816, 2882, 10292, 37098, 134776, 492928, 1813280, 6704036, 24896384, 92821406, 347288668, 1303497706, 4906548936, 18517205480, 70050366736, 265580173580, 1008918629472, 3839950348356, 14640138781352, 55906508978244, 213811016178928, 818852998026720, 3140159488660864, 12056817284333832, 46346539747743104, 178351527663044086, 687044558532281644, 2649216015485562346, 10224734042902711784, 39497387285620732824, 152702972556053788592, 590842687127351442812, 2287837786410913939104, 8865280210709718966588, 34376329398273313639064, 133386906091976006424556, 517894482666698125701136, 2012019888911645233614144, 7821235914314729554322240, 30420092117069327882348152, 118379958697601363920713728, 460913490529908582323604972, 1795460283188277003914954136, 6997443164775859912613631428, 27283660553990386287671476944, 106428629938125322008703875152, 415336553330931973734696841760, 1621516276227047814018236303096, 6333093466343009924473370114752, 24744470697548016204937488224776, 96716966734141830635886297199440, 378167501454451046313434590137416, 1479169134636928750168152045225952, 5787604608310316993909196685742912, 22652845709324099396845733690966016, 88692171878969390328785079375745296, 347362018451520743638733254207956224, 1360849112452134573215502727603539366, 5332912801613882398040591186726447564, 20904619815956184117669643928835892202, 81967165716366003701099255069468007464, 321480126125028455532914321539821647224, 1261193599203852312990445562115656685040, 4949026490019846405348213691169812247004, 19425190596190752540092254474365279783200, 76263283633169639261737920299156476959628, 299479937691896258841920220049786394204984, 1176303562450174081768448614423257563586780, 4621341427757237046286183977693149661151440, 18159809043363115564147403077766596771792256, 71375108088294194124051938990951914928949696, 280590100852861877287510446065739757239981848, 1103280242407718186548045145768155404467742464, 4338955606618571143264165254848254720644456644, 17067442785444451013385161473606577614328397384, 67148090878811184004281308606873471463828062828, 264228096428610836208182639271965113298789946992, 1039926500379883426226623988078542280432043984304, 4093576286786755592816205049247532806515062376160, 16116771619443381902669689380945103102779690071016, 63463865186383036017200461893258279071479385782592, 249946306528948880925084496584049885462232661290424, 984548582180425354001835955096430859343929430194992, 3878790597662212431519082983944594848042529050177848, 15283501065089435074296170236302312252048573742351648, 60230341557386020573465684341704623309055614029169472, 237395467302001022936057037958011249076458552721437440, 935821129365394430080553907507567133119068902401094256, 3689566503466126353142491925896939762430256847149365504, 14548515888128377543422274685575514906501546410241423036, 57374869910564482205660779182122151493960847277063759608, 226299324881634188551672960043009590683211395140294094276, 892693168434306461251004994631166316832979121425548590736, 3521903803172710768846367370118889433408600607933338667760
Generating function in Maple syntax:
-(x+(x-1)*(-4*x+1)^(1/2))/(4*x^3-8*x^2+6*x-1)*(x-1)
Generating function in latex syntax:
-\frac{\left(x +\left(x -1\right) \sqrt{-4 x +1}\right) \left(x -1\right)}{4 x^{3}-8 x^{2}+6 x -1}
Generating function in sympy syntax:
(-x - sqrt(1 - 4*x)*(x - 1))*(x - 1)/(4*x**3 - 8*x**2 + 6*x - 1)
Implicit equation for the generating function in Maple syntax:
(4*x^3-8*x^2+6*x-1)*F(x)^2+2*x*(x-1)*F(x)+(x-1)^2 = 0
Implicit equation for the generating function in latex syntax:
\left(4 x^{3}-8 x^{2}+6 x -1\right) F \! \left(x \right)^{2}+2 x \left(x -1\right) F \! \left(x \right)+\left(x -1\right)^{2} = 0
Recurrence in maple format:
a(0) = 1
a(1) = 1
a(2) = 2
a(3) = 6
a(4) = 20
a(n+5) = 8*(1+2*n)/(n+5)*a(n)-4*(20+13*n)/(n+5)*a(n+1)+4*(40+17*n)/(n+5)*a(n+2)-6*(23+7*n)/(n+5)*a(n+3)+(46+11*n)/(n+5)*a(n+4), n >= 5
Recurrence in latex format:
a \! \left(0\right) = 1
a \! \left(1\right) = 1
a \! \left(2\right) = 2
a \! \left(3\right) = 6
a \! \left(4\right) = 20
a \! \left(n +5\right) = \frac{8 \left(1+2 n \right) a \! \left(n \right)}{n +5}-\frac{4 \left(20+13 n \right) a \! \left(n +1\right)}{n +5}+\frac{4 \left(40+17 n \right) a \! \left(n +2\right)}{n +5}-\frac{6 \left(23+7 n \right) a \! \left(n +3\right)}{n +5}+\frac{\left(46+11 n \right) a \! \left(n +4\right)}{n +5}, \quad n \geq 5
Specification 1
Strategy pack name: col_placements_tracked_fusion
Tree: http://permpal.com/tree/21129/
System of equations in Maple syntax:
F[0,x] = F[1,x]+F[2,x]
F[1,x] = 1
F[2,x] = F[18,x]*F[3,x]
F[3,x] = F[1,x]+F[20,x]+F[4,x]
F[4,x] = F[18,x]*F[5,x]
F[5,x] = F[1,x]+F[19,x]+F[4,x]+F[6,x]
F[6,x] = F[18,x]*F[7,x]
F[7,x] = F[8,x,1]
F[8,x,k[0]] = 1/(-1+k[0])*(F[9,x,k[0]]*k[0]-F[9,x,1])
F[9,x,k[0]] = F[1,x]+F[10,x,k[0]]+F[12,x,k[0]]
F[10,x,k[0]] = F[11,x,k[0]]*F[9,x,k[0]]
F[11,x,k[0]] = k[0]*x
F[12,x,k[0]] = F[13,x,k[0]]*F[18,x]
F[13,x,k[0]] = F[1,x]+F[14,x,k[0]]+F[16,x,k[0]]+F[4,x]
F[14,x,k[0]] = F[11,x,k[0]]*F[15,x,k[0]]
F[15,x,k[0]] = 1/(-1+k[0])*(F[9,x,k[0]]*k[0]-F[9,x,1])
F[16,x,k[0]] = F[17,x,k[0]]*F[18,x]
F[17,x,k[0]] = (F[13,x,k[0]]*k[0]-F[13,x,1])/(-1+k[0])
F[18,x] = x
F[19,x] = F[16,x,1]
F[20,x] = F[12,x,1]
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_{18}\! \left(x \right) F_{3}\! \left(x \right)
F_{3}\! \left(x \right) = F_{1}\! \left(x \right)+F_{20}\! \left(x \right)+F_{4}\! \left(x \right)
F_{4}\! \left(x \right) = F_{18}\! \left(x \right) F_{5}\! \left(x \right)
F_{5}\! \left(x \right) = F_{1}\! \left(x \right)+F_{19}\! \left(x \right)+F_{4}\! \left(x \right)+F_{6}\! \left(x \right)
F_{6}\! \left(x \right) = F_{18}\! \left(x \right) F_{7}\! \left(x \right)
F_{7}\! \left(x \right) = F_{8}\! \left(x , 1\right)
F_{8}\! \left(x , y\right) = \frac{y F_{9}\! \left(x , y\right)-F_{9}\! \left(x , 1\right)}{-1+y}
F_{9}\! \left(x , y\right) = F_{1}\! \left(x \right)+F_{10}\! \left(x , y\right)+F_{12}\! \left(x , y\right)
F_{10}\! \left(x , y\right) = F_{11}\! \left(x , y\right) F_{9}\! \left(x , y\right)
F_{11}\! \left(x , y\right) = y x
F_{12}\! \left(x , y\right) = F_{13}\! \left(x , y\right) F_{18}\! \left(x \right)
F_{13}\! \left(x , y\right) = F_{1}\! \left(x \right)+F_{14}\! \left(x , y\right)+F_{16}\! \left(x , y\right)+F_{4}\! \left(x \right)
F_{14}\! \left(x , y\right) = F_{11}\! \left(x , y\right) F_{15}\! \left(x , y\right)
F_{15}\! \left(x , y\right) = \frac{y F_{9}\! \left(x , y\right)-F_{9}\! \left(x , 1\right)}{-1+y}
F_{16}\! \left(x , y\right) = F_{17}\! \left(x , y\right) F_{18}\! \left(x \right)
F_{17}\! \left(x , y\right) = \frac{y F_{13}\! \left(x , y\right)-F_{13}\! \left(x , 1\right)}{-1+y}
F_{18}\! \left(x \right) = x
F_{19}\! \left(x \right) = F_{16}\! \left(x , 1\right)
F_{20}\! \left(x \right) = F_{12}\! \left(x , 1\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_18(x)*F_3(x))
Eq(F_3(x), F_1(x) + F_20(x) + F_4(x))
Eq(F_4(x), F_18(x)*F_5(x))
Eq(F_5(x), F_1(x) + F_19(x) + F_4(x) + F_6(x))
Eq(F_6(x), F_18(x)*F_7(x))
Eq(F_7(x), F_8(x, 1))
Eq(F_8(x, k_0), (k_0*F_9(x, k_0) - F_9(x, 1))/(k_0 - 1))
Eq(F_9(x, k_0), F_1(x) + F_10(x, k_0) + F_12(x, k_0))
Eq(F_10(x, k_0), F_11(x, k_0)*F_9(x, k_0))
Eq(F_11(x, k_0), k_0*x)
Eq(F_12(x, k_0), F_13(x, k_0)*F_18(x))
Eq(F_13(x, k_0), F_1(x) + F_14(x, k_0) + F_16(x, k_0) + F_4(x))
Eq(F_14(x, k_0), F_11(x, k_0)*F_15(x, k_0))
Eq(F_15(x, k_0), (-k_0*F_9(x, k_0) + F_9(x, 1))/(1 - k_0))
Eq(F_16(x, k_0), F_17(x, k_0)*F_18(x))
Eq(F_17(x, k_0), (-k_0*F_13(x, k_0) + F_13(x, 1))/(1 - k_0))
Eq(F_18(x), x)
Eq(F_19(x), F_16(x, 1))
Eq(F_20(x), F_12(x, 1))
Pack JSON:
{"expansion_strats": [[{"class_module": "tilings.strategies.requirement_placement", "dirs": [0, 1, 2, 3], "ignore_parent": false, "partial": false, "place_col": true, "place_row": false, "strategy_class": "RowAndColumnPlacementFactory"}]], "inferral_strats": [{"class_module": "tilings.strategies.row_and_col_separation", "ignore_parent": true, "inferrable": true, "possibly_empty": false, "strategy_class": "RowColumnSeparationStrategy", "workable": true}, {"class_module": "tilings.strategies.obstruction_inferral", "strategy_class": "ObstructionTransitivityFactory"}], "initial_strats": [{"class_module": "tilings.strategies.rearrange_assumption", "strategy_class": "RearrangeAssumptionFactory"}, {"class_module": "tilings.strategies.assumption_insertion", "strategy_class": "AddAssumptionFactory"}, {"class_module": "tilings.strategies.factor", "ignore_parent": true, "interleaving": null, "strategy_class": "FactorFactory", "tracked": false, "unions": false, "workable": true}, {"class_module": "tilings.strategies.fusion.fusion", "strategy_class": "FusionFactory", "tracked": true}], "iterative": false, "name": "col_placements_tracked_fusion", "symmetries": [], "ver_strats": [{"class_module": "tilings.strategies.verification", "strategy_class": "BasicVerificationStrategy"}, {"class_module": "tilings.strategies.verification", "ignore_parent": true, "strategy_class": "InsertionEncodingVerificationStrategy"}, {"basis": [], "class_module": "tilings.strategies.verification", "ignore_parent": true, "strategy_class": "OneByOneVerificationStrategy", "symmetry": false}, {"basis": [], "class_module": "tilings.strategies.verification", "ignore_parent": true, "strategy_class": "LocallyFactorableVerificationStrategy", "symmetry": false}]}
Specification JSON:
{"root": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0, 3], "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], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 0, "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"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"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 0], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": []}, {"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]]}]]}], "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], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 0], [0, 2]], [[1, 1]]], "strategy_class": "FactorStrategy", "workable": true}}, {"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"}}, {"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], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 0], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 0], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 0, "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"}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 2]]}]]}, "rule_class": "Rule", "strategy": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.strategies.assumption_insertion", "strategy_class": "AddAssumptionsStrategy", "workable": false}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, {"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]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 0], [0, 1], [0, 3]], [[1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}], "requirements": []}, {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}, {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 4]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 4], [0, 4]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 0], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 1], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 2], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}], "requirements": [[{"patt": [0], "pos": [[1, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 0, "gps": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 0, 0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1], [0, 2], [0, 3]], [[1, 0]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 0], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": []}], "class_module": "tilings.strategies.fusion.fusion", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, "rule_class": "FusionRule", "strategy": {"class_module": "tilings.strategies.fusion.fusion", "col_idx": null, "row_idx": 0, "strategy_class": "FusionStrategy", "tracked": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}], "requirements": []}, {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[1, 0]]}]]}, {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 2]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 0], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 0, "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"}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 0], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": []}, {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": [[{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1], [0, 2]], [[1, 0]]], "strategy_class": "FactorStrategy", "workable": true}}, {"class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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"}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": []}, {"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]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 4]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 4], [0, 4]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 0], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 1], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 2], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}], "requirements": [[{"patt": [0], "pos": [[1, 3]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 0], [0, 1], [0, 2], [0, 4]], [[1, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}], "class_module": "tilings.strategies.fusion.fusion", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "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": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": []}, "rule_class": "FusionRule", "strategy": {"class_module": "tilings.strategies.fusion.fusion", "col_idx": null, "row_idx": 0, "strategy_class": "FusionStrategy", "tracked": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, {"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]]}]]}], "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], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 0], [0, 2], [0, 3]], [[1, 1]]], "strategy_class": "FactorStrategy", "workable": true}}, {"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], "pos": [[0, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 0]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 0], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 4]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 4], [0, 4]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 0], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 1], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 2], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}], "requirements": [[{"patt": [0], "pos": [[1, 3]]}]]}], "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, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 0, "gps": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}], "ignore_parent": false, "include_empty": true, "indices": [0, 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": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, {"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]]}]]}], "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": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 3], [0, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 3], [0, 3]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 1], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 2], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1], [0, 2], [0, 3]], [[1, 0]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 1]]}]}], "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}], "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 1]]}]}], "class_module": "tilings.strategies.assumption_insertion", "strategy_class": "AddAssumptionsStrategy", "workable": false}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 0], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": []}], "class_module": "tilings.strategies.fusion.fusion", "comb_class": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 1]]}]}], "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": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 1], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}], "requirements": []}, "rule_class": "FusionRule", "strategy": {"class_module": "tilings.strategies.fusion.fusion", "col_idx": null, "row_idx": 0, "strategy_class": "FusionStrategy", "tracked": true}}, {"children": [{"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 4]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 4], [0, 4]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 0], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 1], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 2], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}], "requirements": [[{"patt": [0], "pos": [[1, 3]]}]]}], "class_module": "comb_spec_searcher.strategies.rule", "comb_class": {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 4]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 2]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 3], [1, 3]]}, {"patt": [1, 0], "pos": [[1, 3], [1, 3]]}, {"patt": [0, 1, 2], "pos": [[0, 0], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 1], [0, 4], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 2], [0, 4]]}, {"patt": [0, 1, 2], "pos": [[0, 2], [0, 4], [0, 4]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 1]]}, {"patt": [1, 2, 0], "pos": [[0, 2], [0, 2], [0, 2]]}, {"patt": [0, 1, 2, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 1, 3, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [0, 2, 3, 1], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 0], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 1], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 2], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}], "requirements": [[{"patt": [0], "pos": [[1, 3]]}]]}, "rule_class": "Rule", "strategy": {"assumptions": [{"assumption": "TrackingAssumption", "class_module": "tilings.assumptions", "gps": [{"patt": [0], "pos": [[0, 0]]}]}], "class_module": "tilings.strategies.assumption_insertion", "strategy_class": "AddAssumptionsStrategy", "workable": false}}]}