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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions