grid 2700 x 2100 pixels, step 0.1
punctures inside each disc: {1: ['a', 'c'], 2: ['tI', 'tO'], 3: ['a', 'b'], 4: ['tI', 'tO'], 5: ['b', 'c'], 6: ['tI', 'tO']}

(H1) consecutive discs are disjoint: distance of the arcs minus sum of the radii
   D_1, D_2: dist(alpha_1, alpha_2) = 30.017 > r_1 + r_2 = 6.3 : True ; no common pixel: True
   D_2, D_3: dist(alpha_2, alpha_3) = 30.017 > r_2 + r_3 = 6.9 : True ; no common pixel: True
   D_3, D_4: dist(alpha_3, alpha_4) = 30.017 > r_3 + r_4 = 7.5 : True ; no common pixel: True
   D_4, D_5: dist(alpha_4, alpha_5) = 30.000 > r_4 + r_5 = 8.1 : True ; no common pixel: True
   D_5, D_6: dist(alpha_5, alpha_6) = 30.000 > r_5 + r_6 = 8.7 : True ; no common pixel: True
   D_6, D_1: dist(alpha_6, alpha_1) = 30.017 > r_6 + r_1 = 7.5 : True ; no common pixel: True

(H2) the nine other pairs: regions as (corners, punctures), all regions discs?
   pair (1,3), type I  : 2 crossings, 4 regions [(2, ('a',)), (2, ('b',)), (2, ('c',)), (2, ('tI', 'tO'))] ; all discs True ; empty bigon: False -> ok
   pair (1,4), type III: 4 crossings, 6 regions [(2, ('a',)), (2, ('c',)), (2, ('tI',)), (2, ('tO',)), (4, ()), (4, ('b',))] ; all discs True ; empty bigon: False -> ok
   pair (1,5), type I  : 2 crossings, 4 regions [(2, ('a',)), (2, ('b',)), (2, ('c',)), (2, ('tI', 'tO'))] ; all discs True ; empty bigon: False -> ok
   pair (2,4), type II : 4 crossings, 6 regions [(2, ('a', 'b')), (2, ('c',)), (2, ('tI',)), (2, ('tO',)), (4, ()), (4, ())] ; all discs True ; empty bigon: False -> ok
   pair (2,5), type III: 4 crossings, 6 regions [(2, ('b',)), (2, ('c',)), (2, ('tI',)), (2, ('tO',)), (4, ()), (4, ('a',))] ; all discs True ; empty bigon: False -> ok
   pair (2,6), type II : 4 crossings, 6 regions [(2, ('a', 'c')), (2, ('b',)), (2, ('tI',)), (2, ('tO',)), (4, ()), (4, ())] ; all discs True ; empty bigon: False -> ok
   pair (3,5), type I  : 2 crossings, 4 regions [(2, ('a',)), (2, ('b',)), (2, ('c',)), (2, ('tI', 'tO'))] ; all discs True ; empty bigon: False -> ok
   pair (3,6), type III: 4 crossings, 6 regions [(2, ('a',)), (2, ('b',)), (2, ('tI',)), (2, ('tO',)), (4, ()), (4, ('c',))] ; all discs True ; empty bigon: False -> ok
   pair (4,6), type II : 4 crossings, 6 regions [(2, ('a',)), (2, ('b', 'c')), (2, ('tI',)), (2, ('tO',)), (4, ()), (4, ())] ; all discs True ; empty bigon: False -> ok

(H3) the five minimal sets not contained in a join of C_6
   Y = [1, 4]: 4 crossings, 6 regions, all discs True, punctures per region [(), ('a',), ('b',), ('c',), ('tI',), ('tO',)] -> ok
   Y = [2, 5]: 4 crossings, 6 regions, all discs True, punctures per region [(), ('a',), ('b',), ('c',), ('tI',), ('tO',)] -> ok
   Y = [3, 6]: 4 crossings, 6 regions, all discs True, punctures per region [(), ('a',), ('b',), ('c',), ('tI',), ('tO',)] -> ok
   Y = [1, 3, 5]: 6 crossings, 8 regions, all discs True, punctures per region [(), (), (), ('a',), ('b',), ('c',), ('tI',), ('tO',)] -> ok
   Y = [2, 4, 6]: 12 crossings, 14 regions, all discs True, punctures per region [(), (), (), (), (), (), (), (), (), ('a',), ('b',), ('c',), ('tI',), ('tO',)] -> ok

(H4) controls: sets contained in a join of C_6 (their lifts must not fill)
   Y = [1, 3]: regions that are not discs with at most one puncture: [('disc', ('tI', 'tO'))] -> ok
   Y = [2, 4]: regions that are not discs with at most one puncture: [('disc', ('a', 'b'))] -> ok
   Y = [1, 2, 3]: regions that are not discs with at most one puncture: [('not a disc', ()), ('disc', ('tI', 'tO'))] -> ok
   Y = [6, 1, 2]: regions that are not discs with at most one puncture: [('not a disc', ()), ('disc', ('a', 'c'))] -> ok
   Y = [3, 5]: regions that are not discs with at most one puncture: [('disc', ('tI', 'tO'))] -> ok
   Y = [4, 6]: regions that are not discs with at most one puncture: [('disc', ('b', 'c'))] -> ok
   Y = [1, 2]: regions that are not discs with at most one puncture: [('not a disc', ('b',)), ('disc', ('a', 'c')), ('disc', ('tI', 'tO'))] -> ok
   Y = [2, 3, 4]: regions that are not discs with at most one puncture: [('not a disc', ()), ('disc', ('a', 'b'))] -> ok

RESULT: ALL CHECKS PASSED
