Skip to content

sanity check failure #492

@christianbean

Description

@christianbean
reverse of 'change component assumption in cells (0, 1) to point assumption'
+-+                                                         +-+                                                    
|\|                                                      =  |\|                                                    
+-+                                                         +-+                                                    
|1|                                                         |1|                                                    
+-+                                                         +-+                                                    
1: Av+(02341, 02431, 03412, 03421, 12340, 12430, 13420)     1: Av+(02341, 02431, 03412, 03421, 12340, 12430, 13420)
\: Av+(01)                                                  \: Av+(01)                                             
Crossing obstructions:                                      Crossing obstructions:                                 
02341: (0, 0), (0, 0), (0, 0), (0, 1), (0, 0)               02341: (0, 0), (0, 0), (0, 0), (0, 1), (0, 0)          
02431: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)               02431: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)          
02431: (0, 0), (0, 0), (0, 1), (0, 1), (0, 0)               02431: (0, 0), (0, 0), (0, 1), (0, 1), (0, 0)          
03412: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)               03412: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)          
03421: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)               03421: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)          
12340: (0, 0), (0, 0), (0, 0), (0, 1), (0, 0)               12340: (0, 0), (0, 0), (0, 0), (0, 1), (0, 0)          
12430: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)               12430: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)          
12430: (0, 0), (0, 0), (0, 1), (0, 1), (0, 0)               12430: (0, 0), (0, 0), (0, 1), (0, 1), (0, 0)          
13420: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)               13420: (0, 0), (0, 0), (0, 1), (0, 0), (0, 0)          
Requirement 0:                                              Requirement 0:                                         
10: (0, 1), (0, 0)                                          10: (0, 1), (0, 0)                                     
Assumption 0:                                               Assumption 0:                                          
can count points in cell (0, 1)                             can count skew components in cells frozenset({(0, 1)}) 
                                                            Assumption 1:                                          
                                                            can count points in cell (0, 1)                        
{"class_module": "comb_spec_searcher.strategies.rule", "rule_class": "EquivalencePathRule", "rules": [{"class_module": "comb_spec_searcher.strategies.rule", "rule_class": "ReverseRule", "original_rule": {"class_module": "comb_spec_searcher.strategies.rule", "rule_class": "Rule", "comb_class": {"class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 2, 3, 4, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 4, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 4, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 4, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 2, 4, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 4, 1, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 4, 1, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 4, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 4, 2, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [1, 2, 3, 4, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 3, 4, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 2, 4, 3, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 4, 3, 0], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [1, 2, 4, 3, 0], "pos": [[0, 0], [0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [1, 3, 4, 2, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 3, 4, 2, 0], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [1, 0], "pos": [[0, 1], [0, 0]]}]], "assumptions": [{"class_module": "tilings.assumptions", "assumption": "SkewComponentAssumption", "gps": [{"patt": [0], "pos": [[0, 1]]}]}, {"class_module": "tilings.assumptions", "assumption": "TrackingAssumption", "gps": [{"patt": [0], "pos": [[0, 1]]}]}]}, "children": [{"class_module": "tilings.tiling", "comb_class": "Tiling", "obstructions": [{"patt": [0, 1], "pos": [[0, 1], [0, 1]]}, {"patt": [0, 2, 3, 4, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 3, 4, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [0, 2, 4, 3, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 2, 4, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 2, 4, 3, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [0, 3, 4, 1, 2], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 4, 1, 2], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [0, 3, 4, 2, 1], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [0, 3, 4, 2, 1], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [1, 2, 3, 4, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 3, 4, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 1], [0, 0]]}, {"patt": [1, 2, 4, 3, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 2, 4, 3, 0], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}, {"patt": [1, 2, 4, 3, 0], "pos": [[0, 0], [0, 0], [0, 1], [0, 1], [0, 0]]}, {"patt": [1, 3, 4, 2, 0], "pos": [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]}, {"patt": [1, 3, 4, 2, 0], "pos": [[0, 0], [0, 0], [0, 1], [0, 0], [0, 0]]}], "requirements": [[{"patt": [1, 0], "pos": [[0, 1], [0, 0]]}]], "assumptions": [{"class_module": "tilings.assumptions", "assumption": "TrackingAssumption", "gps": [{"patt": [0], "pos": [[0, 1]]}]}]}], "strategy": {"class_module": "tilings.strategies.rearrange_assumption", "strategy_class": "ComponentToPointAssumptionStrategy", "ignore_parent": false, "inferrable": false, "possibly_empty": false, "workable": false, "assumption": {"class_module": "tilings.assumptions", "assumption": "SkewComponentAssumption", "gps": [{"patt": [0], "pos": [[0, 1]]}]}}}, "idx": 0}]}
Traceback (most recent call last):
  File "garpur-run-load.py", line 14, in <module>
    spec.sanity_check(i)
  File "/Users/christianbean/Documents/code/comb_spec_searcher/comb_spec_searcher/specification.py", line 493, in sanity_check
    if not rule.sanity_check(n):
  File "/Users/christianbean/Documents/code/comb_spec_searcher/comb_spec_searcher/strategies/rule.py", line 543, in sanity_check
    and self._sanity_check_random_sample(n)
  File "/Users/christianbean/Documents/code/comb_spec_searcher/comb_spec_searcher/strategies/rule.py", line 647, in _sanity_check_random_sample
    self.random_sample_object_of_size(n, **possible_parameters[0][0])
  File "/Users/christianbean/Documents/code/comb_spec_searcher/comb_spec_searcher/strategies/rule.py", line 535, in random_sample_object_of_size
    objs = tuple(self.backward_map(subobjs))
  File "/Users/christianbean/Documents/code/comb_spec_searcher/comb_spec_searcher/strategies/rule.py", line 908, in backward_map
    res = (next(rule.backward_map(res)),)
  File "/Users/christianbean/Documents/code/comb_spec_searcher/comb_spec_searcher/strategies/rule.py", line 1044, in backward_map
    assert all(obj is None for obj in objs[1:])
TypeError: 'NoneType' object is not subscriptable

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions