0213_0231_1032_1203_1302_2031
Counting sequence:
1, 1, 2, 6, 18, 52, 148, 420, 1192, 3384, 9608, 27280, 77456, 219920, 624416, 1772896, 5033760, 14292288, 40579904, 115217984, 327136896, 928835456, 2637230208, 7487852800, 21260161280, 60363694336, 171389837824, 486624896512, 1381667623424, 3922950583296, 11138381632512, 31625059443712, 89792612411392, 254946975135744, 723867569784832, 2055267603419136, 5835494084808704, 16568641065127936, 47043123128115200, 133568916421566464, 379240455304060928, 1076772401786208256, 3057265618771722240, 8680453778550177792, 24646297442686238720, 69977905894087688192, 198687341362706153472, 564130336759846338560, 1601727793376736116736, 4547764509192971419648, 12912407536784633888768, 36662027697120122109952, 104094009659727895724032, 295552742924000362233856, 839158988451330110259200, 2382613001428774783549440, 6764921537757779417628672, 19207552122218678756835328, 54535748340701146923925504, 154842627949445431503618048, 439642622679414495832440832, 1248271475601278551163142144, 3544200667586347084330041344, 10063002013299103124332478464, 28571748334053581262336032768, 81123386618190606720674299904, 230332557163146308082018025472, 653980178847929967970046967808, 1856837259975515852993464369152, 5272093438836636156257705656320, 14968985073140341148997059084288, 42501241057165851676944342450176, 120673210813775314424304544776192, 342625849172718533287434927472640, 972813035550104578806410215686144, 2762095167137094810924510242406400, 7842380224693397995047269961826304, 22266766301325421894103859309051904, 63221734640802285218075377873715200, 179504633807294249285980614182305792, 509665129268618700059828663852466176, 1447085451126902373531542954428071936, 4108690555047723192458818390667034624, 11665750674220520675828759072660783104, 33122411378944994680542848636831137792, 94044023928993342403773995038015488000, 267017951548634432244582103750058967040, 758140533236454348724318132121836191744, 2152578374609266350726492103563139874816, 6111787268588516872497860093265332666368, 17353116642389910784534108223052443549696, 49270474244424108349597976726274723282944, 139893004945313824005251194199419784265728, 397196356088338684191681086338685131030528, 1127754353060947657444915522009610833625088, 3202017997781063541023440131082542378909696, 9091447291057140902697460608969096443199488, 25813225879226204761585912955565437924409344, 73291150348238382517600689648550450682658816, 208094592458162992829454027989878243919396864, 590840220198150850770585179276442048795770880
Generating function in Maple syntax:
-(2*x-1)*(x-1)/(2*x^3-4*x^2+4*x-1)
Generating function in latex syntax:
-\frac{\left(2 x -1\right) \left(x -1\right)}{2 x^{3}-4 x^{2}+4 x -1}
Generating function in sympy syntax:
(1 - 2*x)*(x - 1)/(2*x**3 - 4*x**2 + 4*x - 1)
Implicit equation for the generating function in Maple syntax:
(2*x^3-4*x^2+4*x-1)*F(x)+(2*x-1)*(x-1) = 0
Implicit equation for the generating function in latex syntax:
\left(2 x^{3}-4 x^{2}+4 x -1\right) F \! \left(x \right)+\left(2 x -1\right) \left(x -1\right) = 0
Explicit closed form in Maple syntax:
-5/2304*(-1/8*((I+5/11*11^(1/2))*3^(1/2)-15/11*I*11^(1/2)-1)*2^(2/3)*(13+3*11^(1/2)*3^(1/2))^(2/3)-16+2^(1/3)*((I-1/11*11^(1/2))*3^(1/2)-3/11*I*11^(1/2)+1)*(13+3*11^(1/2)*3^(1/2))^(1/3))*((-1/20*((I-9/11*11^(1/2))*3^(1/2)-31/11*I*11^(1/2)+5)*2^(2/3)*(13+3*11^(1/2)*3^(1/2))^(2/3)+((I-3/55*11^(1/2))*3^(1/2)-19/55*I*11^(1/2)-1/5)*2^(1/3)*(13+3*11^(1/2)*3^(1/2))^(1/3)-8/55*I*11^(1/2)+8)*(13/384*((I-3/13*11^(1/2))*3^(1/2)-9/13*I*11^(1/2)+1)*2^(2/3)*(13+3*11^(1/2)*3^(1/2))^(2/3)-1/12*I*3^(1/2)*(26+6*11^(1/2)*3^(1/2))^(1/3)+1/12*(26+6*11^(1/2)*3^(1/2))^(1/3)+2/3)^(-n)+(1/10*((I-10/11*11^(1/2))*3^(1/2)+1/11*I*11^(1/2)+2)*2^(2/3)*(13+3*11^(1/2)*3^(1/2))^(2/3)+2/5*2^(1/3)*((I-4/11*11^(1/2))*3^(1/2)-7/11*I*11^(1/2)+4)*(13+3*11^(1/2)*3^(1/2))^(1/3)+8/55*I*11^(1/2)+8)*(1/192*2^(2/3)*(3*11^(1/2)*3^(1/2)-13)*(13+3*11^(1/2)*3^(1/2))^(2/3)-1/6*(26+6*11^(1/2)*3^(1/2))^(1/3)+2/3)^(-n)+48/5*(-13/384*((I+3/13*11^(1/2))*3^(1/2)-9/13*I*11^(1/2)-1)*2^(2/3)*(13+3*11^(1/2)*3^(1/2))^(2/3)+1/12*I*3^(1/2)*(26+6*11^(1/2)*3^(1/2))^(1/3)+1/12*(26+6*11^(1/2)*3^(1/2))^(1/3)+2/3)^(-n))
Explicit closed form in latex syntax:
-\frac{5 \left(-\frac{\left(\left(\mathrm{I}+\frac{5 \sqrt{11}}{11}\right) \sqrt{3}-\frac{15 \,\mathrm{I} \sqrt{11}}{11}-1\right) 2^{\frac{2}{3}} \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{2}{3}}}{8}-16+2^{\frac{1}{3}} \left(\left(\mathrm{I}-\frac{\sqrt{11}}{11}\right) \sqrt{3}-\frac{3 \,\mathrm{I} \sqrt{11}}{11}+1\right) \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}\right) \left(\left(-\frac{\left(\left(\mathrm{I}-\frac{9 \sqrt{11}}{11}\right) \sqrt{3}-\frac{31 \,\mathrm{I} \sqrt{11}}{11}+5\right) 2^{\frac{2}{3}} \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{2}{3}}}{20}+\left(\left(\mathrm{I}-\frac{3 \sqrt{11}}{55}\right) \sqrt{3}-\frac{19 \,\mathrm{I} \sqrt{11}}{55}-\frac{1}{5}\right) 2^{\frac{1}{3}} \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}-\frac{8 \,\mathrm{I} \sqrt{11}}{55}+8\right) \left(\frac{13 \left(\left(\mathrm{I}-\frac{3 \sqrt{11}}{13}\right) \sqrt{3}-\frac{9 \,\mathrm{I} \sqrt{11}}{13}+1\right) 2^{\frac{2}{3}} \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{2}{3}}}{384}-\frac{\mathrm{I} \sqrt{3}\, \left(26+6 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}}{12}+\frac{\left(26+6 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}}{12}+\frac{2}{3}\right)^{-n}+\left(\frac{\left(\left(\mathrm{I}-\frac{10 \sqrt{11}}{11}\right) \sqrt{3}+\frac{\mathrm{I} \sqrt{11}}{11}+2\right) 2^{\frac{2}{3}} \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{2}{3}}}{10}+\frac{2 \,2^{\frac{1}{3}} \left(\left(\mathrm{I}-\frac{4 \sqrt{11}}{11}\right) \sqrt{3}-\frac{7 \,\mathrm{I} \sqrt{11}}{11}+4\right) \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}}{5}+\frac{8 \,\mathrm{I} \sqrt{11}}{55}+8\right) \left(\frac{2^{\frac{2}{3}} \left(3 \sqrt{11}\, \sqrt{3}-13\right) \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{2}{3}}}{192}-\frac{\left(26+6 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}}{6}+\frac{2}{3}\right)^{-n}+\frac{48 \left(-\frac{13 \left(\left(\mathrm{I}+\frac{3 \sqrt{11}}{13}\right) \sqrt{3}-\frac{9 \,\mathrm{I} \sqrt{11}}{13}-1\right) 2^{\frac{2}{3}} \left(13+3 \sqrt{11}\, \sqrt{3}\right)^{\frac{2}{3}}}{384}+\frac{\mathrm{I} \sqrt{3}\, \left(26+6 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}}{12}+\frac{\left(26+6 \sqrt{11}\, \sqrt{3}\right)^{\frac{1}{3}}}{12}+\frac{2}{3}\right)^{-n}}{5}\right)}{2304}
Recurrence in maple format:
a(0) = 1
a(1) = 1
a(2) = 2
a(n+3) = 2*a(n)-4*a(n+1)+4*a(n+2), n >= 3
Recurrence in latex format:
a \! \left(0\right) = 1
a \! \left(1\right) = 1
a \! \left(2\right) = 2
a \! \left(n +3\right) = 2 a \! \left(n \right)-4 a \! \left(n +1\right)+4 a \! \left(n +2\right), \quad n \geq 3
Specification 1
Strategy pack name: point_placements
Tree: http://permpal.com/tree/22518/
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[7,x]
F[4,x] = F[0,x]+F[5,x]
F[5,x] = F[6,x]
F[6,x] = F[0,x]*F[7,x]*F[8,x]
F[7,x] = x
F[8,x] = F[22,x]+F[9,x]
F[9,x] = F[10,x]+F[13,x]
F[10,x] = F[1,x]+F[11,x]
F[11,x] = F[12,x]
F[12,x] = F[10,x]*F[7,x]
F[13,x] = F[14,x]+F[17,x]
F[14,x] = F[15,x]
F[15,x] = F[16,x]*F[7,x]
F[16,x] = F[1,x]+F[15,x]
F[17,x] = F[18,x]+F[19,x]+F[21,x]
F[18,x] = 0
F[19,x] = F[20,x]*F[7,x]
F[20,x] = F[11,x]+F[17,x]
F[21,x] = F[13,x]*F[7,x]
F[22,x] = F[16,x]*F[23,x]
F[23,x] = F[24,x]
F[24,x] = F[16,x]*F[25,x]*F[7,x]
F[25,x] = F[1,x]+F[26,x]
F[26,x] = F[23,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_{7}\! \left(x \right)
F_{4}\! \left(x \right) = F_{0}\! \left(x \right)+F_{5}\! \left(x \right)
F_{5}\! \left(x \right) = F_{6}\! \left(x \right)
F_{6}\! \left(x \right) = F_{0}\! \left(x \right) F_{7}\! \left(x \right) F_{8}\! \left(x \right)
F_{7}\! \left(x \right) = x
F_{8}\! \left(x \right) = F_{22}\! \left(x \right)+F_{9}\! \left(x \right)
F_{9}\! \left(x \right) = F_{10}\! \left(x \right)+F_{13}\! \left(x \right)
F_{10}\! \left(x \right) = F_{1}\! \left(x \right)+F_{11}\! \left(x \right)
F_{11}\! \left(x \right) = F_{12}\! \left(x \right)
F_{12}\! \left(x \right) = F_{10}\! \left(x \right) F_{7}\! \left(x \right)
F_{13}\! \left(x \right) = F_{14}\! \left(x \right)+F_{17}\! \left(x \right)
F_{14}\! \left(x \right) = F_{15}\! \left(x \right)
F_{15}\! \left(x \right) = F_{16}\! \left(x \right) F_{7}\! \left(x \right)
F_{16}\! \left(x \right) = F_{1}\! \left(x \right)+F_{15}\! \left(x \right)
F_{17}\! \left(x \right) = F_{18}\! \left(x \right)+F_{19}\! \left(x \right)+F_{21}\! \left(x \right)
F_{18}\! \left(x \right) = 0
F_{19}\! \left(x \right) = F_{20}\! \left(x \right) F_{7}\! \left(x \right)
F_{20}\! \left(x \right) = F_{11}\! \left(x \right)+F_{17}\! \left(x \right)
F_{21}\! \left(x \right) = F_{13}\! \left(x \right) F_{7}\! \left(x \right)
F_{22}\! \left(x \right) = F_{16}\! \left(x \right) F_{23}\! \left(x \right)
F_{23}\! \left(x \right) = F_{24}\! \left(x \right)
F_{24}\! \left(x \right) = F_{16}\! \left(x \right) F_{25}\! \left(x \right) F_{7}\! \left(x \right)
F_{25}\! \left(x \right) = F_{1}\! \left(x \right)+F_{26}\! \left(x \right)
F_{26}\! \left(x \right) = F_{23}\! \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_7(x))
Eq(F_4(x), F_0(x) + F_5(x))
Eq(F_5(x), F_6(x))
Eq(F_6(x), F_0(x)*F_7(x)*F_8(x))
Eq(F_7(x), x)
Eq(F_8(x), F_22(x) + F_9(x))
Eq(F_9(x), F_10(x) + F_13(x))
Eq(F_10(x), F_1(x) + F_11(x))
Eq(F_11(x), F_12(x))
Eq(F_12(x), F_10(x)*F_7(x))
Eq(F_13(x), F_14(x) + F_17(x))
Eq(F_14(x), F_15(x))
Eq(F_15(x), F_16(x)*F_7(x))
Eq(F_16(x), F_1(x) + F_15(x))
Eq(F_17(x), F_18(x) + F_19(x) + F_21(x))
Eq(F_18(x), 0)
Eq(F_19(x), F_20(x)*F_7(x))
Eq(F_20(x), F_11(x) + F_17(x))
Eq(F_21(x), F_13(x)*F_7(x))
Eq(F_22(x), F_16(x)*F_23(x))
Eq(F_23(x), F_24(x))
Eq(F_24(x), F_16(x)*F_25(x)*F_7(x))
Eq(F_25(x), F_1(x) + F_26(x))
Eq(F_26(x), F_23(x))
Pack JSON:
{"expansion_strats": [[{"class_module": "tilings.strategies.requirement_insertion", "extra_basis": [], "ignore_parent": false, "maxreqlen": 1, "one_cell_only": false, "strategy_class": "CellInsertionFactory"}, {"class_module": "tilings.strategies.requirement_placement", "dirs": [0, 1, 2, 3], "ignore_parent": false, "partial": false, "point_only": false, "strategy_class": "PatternPlacementFactory"}]], "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.factor", "ignore_parent": true, "interleaving": null, "strategy_class": "FactorFactory", "tracked": false, "unions": false, "workable": true}], "iterative": false, "name": "point_placements", "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, 2, 1, 3], "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, 0, 3, 2], "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, 3, 0, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [2, 0, 3, 1], "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, 3], "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, 0, 3, 2], "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, 3, 0, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [2, 0, 3, 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": [0, 2, 1, 3], "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, 0, 3, 2], "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, 3, 0, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [2, 0, 3, 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": false, "strategy_class": "RequirementInsertionStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "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, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [2, 0, 3, 1], "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, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [2, 0, 3, 1], "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, 2, 1, 3], "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, 0, 3, 2], "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, 3, 0, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "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, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 1], [0, 1], [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, 1, 2], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "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, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_insertion", "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "strategy_class": "RequirementInsertionStrategy"}}, {"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", "rule_class": "EquivalencePathRule", "rules": [{"children": [{"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, 2], [0, 2]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 0, 2], "pos": [[0, 0], [0, 0], [0, 2]]}, {"patt": [1, 0, 2], "pos": [[0, 2], [0, 0], [0, 2]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 2], [0, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 2], [0, 2], [0, 2], [0, 2]]}, {"patt": [2, 0, 3, 1], "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, 2, 1, 3], "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, 0, 3, 2], "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, 3, 0, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [2, 0, 3, 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": 0, "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": false, "indices": [0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}]}, {"class_module": "comb_spec_searcher.strategies.rule", "rule_class": "EquivalencePathRule", "rules": [{"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0], "pos": [[2, 1]]}, {"patt": [0, 1], "pos": [[0, 3], [2, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[2, 0], [2, 3]]}, {"patt": [0, 1], "pos": [[2, 3], [2, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[2, 2], [2, 0]]}, {"patt": [1, 0], "pos": [[2, 2], [2, 2]]}, {"patt": [1, 0], "pos": [[2, 3], [2, 0]]}, {"patt": [0, 2, 1], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [1, 2, 0], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "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], "pos": [[0, 0], [0, 1], [0, 1]]}, {"patt": [0, 2, 1], "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, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 1], [0, 1], [0, 1], [0, 1]]}], "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": false, "indices": [0], "own_col": true, "own_row": true, "strategy_class": "RequirementPlacementStrategy"}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0], "pos": [[1, 4]]}, {"patt": [0], "pos": [[2, 1]]}, {"patt": [0], "pos": [[2, 2]]}, {"patt": [0], "pos": [[2, 3]]}, {"patt": [0], "pos": [[2, 4]]}, {"patt": [0], "pos": [[3, 0]]}, {"patt": [0], "pos": [[3, 1]]}, {"patt": [0], "pos": [[3, 4]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[2, 0], [3, 3]]}, {"patt": [0, 1], "pos": [[3, 3], [3, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[3, 2], [3, 2]]}, {"patt": [0, 2, 1], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [1, 2, 0], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}], "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], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0], "pos": [[2, 1]]}, {"patt": [0, 1], "pos": [[0, 3], [2, 3]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[2, 0], [2, 3]]}, {"patt": [0, 1], "pos": [[2, 3], [2, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[2, 2], [2, 0]]}, {"patt": [1, 0], "pos": [[2, 2], [2, 2]]}, {"patt": [1, 0], "pos": [[2, 3], [2, 0]]}, {"patt": [0, 2, 1], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [1, 2, 0], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 3], [0, 3], [0, 3], [0, 3]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.row_and_col_separation", "ignore_parent": true, "inferrable": true, "possibly_empty": false, "strategy_class": "RowColumnSeparationStrategy", "workable": true}}]}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 2, 1, 3], "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, 0, 3, 2], "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, 3, 0, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0]]}], "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]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[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, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[0, 3]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[1, 3]]}, {"patt": [0], "pos": [[1, 4]]}, {"patt": [0], "pos": [[2, 1]]}, {"patt": [0], "pos": [[2, 2]]}, {"patt": [0], "pos": [[2, 3]]}, {"patt": [0], "pos": [[2, 4]]}, {"patt": [0], "pos": [[3, 0]]}, {"patt": [0], "pos": [[3, 1]]}, {"patt": [0], "pos": [[3, 4]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 1], "pos": [[2, 0], [3, 3]]}, {"patt": [0, 1], "pos": [[3, 3], [3, 3]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[3, 2], [3, 2]]}, {"patt": [0, 2, 1], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [1, 2, 0], "pos": [[2, 0], [2, 0], [2, 0]]}, {"patt": [0, 2, 1, 3], "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, 0, 3, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 2, 0, 3], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [1, 3, 0, 2], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}, {"patt": [2, 0, 3, 1], "pos": [[0, 4], [0, 4], [0, 4], [0, 4]]}], "requirements": [[{"patt": [0], "pos": [[1, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 4]], [[1, 1]], [[2, 0], [3, 2], [3, 3]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[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], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [1, 2]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[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, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[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, 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": [1, 0], "pos": [[1, 1], [1, 1]]}, {"patt": [0, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}], "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], "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, 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": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 3, "gps": [{"patt": [0], "pos": [[0, 0]]}], "ignore_parent": false, "include_empty": true, "indices": [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": [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, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}], "requirements": []}, {"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, 0]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0], "pos": [[2, 0]]}, {"patt": [0], "pos": [[2, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[2, 2], [2, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 2, 0], "pos": [[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]], [[2, 2]]], "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": [[2, 0]]}, {"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": [1, 0], "pos": [[2, 1], [2, 1]]}], "requirements": [[{"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, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}], "requirements": []}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 3, "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", "rule_class": "EquivalencePathRule", "rules": [{"class_module": "comb_spec_searcher.strategies.rule", "original_rule": {"class_module": "comb_spec_searcher.strategies.rule", "idx": 1, "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": [[1, 1]]}, {"patt": [0], "pos": [[2, 0]]}, {"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": [1, 0], "pos": [[2, 1], [2, 1]]}], "requirements": [[{"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, 2, 1], "pos": [[0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 0], "pos": [[0, 0], [0, 0], [0, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.requirement_placement", "direction": 3, "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": "ReverseRule"}, "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": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 2, 0], "pos": [[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, 2, 0], "pos": [[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"}, {"children": [{"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], "pos": [[1, 2]]}, {"patt": [0], "pos": [[2, 0]]}, {"patt": [0], "pos": [[2, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[2, 2], [2, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 2, 0], "pos": [[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], "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, 0]]}, {"patt": [1, 0], "pos": [[1, 2], [1, 2]]}, {"patt": [0, 2, 1], "pos": [[1, 0], [1, 0], [1, 0]]}, {"patt": [1, 2, 0], "pos": [[1, 0], [1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.row_and_col_separation", "ignore_parent": true, "inferrable": true, "possibly_empty": false, "strategy_class": "RowColumnSeparationStrategy", "workable": true}}]}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 0], [0, 0]]}], "requirements": []}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"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, 1], "pos": [[0, 1], [0, 1]]}, {"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": [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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[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, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[1, 2]]}]]}, {"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0], "pos": [[0, 0]]}, {"patt": [0], "pos": [[0, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[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, 1], [0, 1]]}, {"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": [[0, 1]]}, {"patt": [0], "pos": [[1, 2]]}, {"patt": [0, 1], "pos": [[0, 2], [0, 2]]}, {"patt": [0, 1], "pos": [[1, 1], [1, 1]]}, {"patt": [1, 0], "pos": [[0, 2], [0, 2]]}, {"patt": [1, 0], "pos": [[1, 0], [1, 0]]}], "requirements": [[{"patt": [0], "pos": [[0, 2]]}], [{"patt": [0], "pos": [[1, 0]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 2]], [[1, 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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 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], "pos": [[0, 1]]}, {"patt": [0], "pos": [[0, 2]]}, {"patt": [0], "pos": [[1, 0]]}, {"patt": [0, 1], "pos": [[0, 0], [0, 0]]}, {"patt": [0, 1], "pos": [[1, 2], [1, 2]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}, {"patt": [1, 0], "pos": [[1, 1], [1, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 0]]}], [{"patt": [0], "pos": [[1, 2]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 0]], [[1, 1], [1, 2]]], "strategy_class": "FactorStrategy", "workable": true}}, {"children": [{"assumptions": [], "class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[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, 1], [0, 1]]}, {"patt": [1, 0], "pos": [[0, 0], [0, 0]]}], "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"}}, {"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]]}], "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": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}], "requirements": [[{"patt": [0], "pos": [[0, 1]]}]]}, "rule_class": "Rule", "strategy": {"class_module": "tilings.strategies.factor", "ignore_parent": true, "partition": [[[0, 1]], [[1, 0]]], "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, 1], "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, 1], "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"}}, {"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": [[1, 1]]}, {"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 1], "pos": [[1, 0], [1, 0]]}, {"patt": [1, 0], "pos": [[0, 1], [0, 1]]}], "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, 1], "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", "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"}}]}