:: GOBOARD9 semantic presentation

Lemma1: for b1 being natural number holds b1 -' b1 = 0
by BINARITH:51;

Lemma2: for b1, b2 being natural number holds b1 -' b2 <= b1
by BINARITH:52;

theorem Th1: :: GOBOARD9:1
canceled;

theorem Th2: :: GOBOARD9:2
canceled;

theorem Th3: :: GOBOARD9:3
for b1 being TopSpace
for b2, b3, b4 being Subset of b1 st b2 is_a_component_of b4 & b3 is_a_component_of b4 & not b2 = b3 holds
b2 misses b3
proof end;

theorem Th4: :: GOBOARD9:4
for b1 being TopSpace
for b2, b3 being Subset of b1
for b4 being Subset of (b1 | b3) st b2 = b4 holds
b1 | b2 = (b1 | b3) | b4
proof end;

theorem Th5: :: GOBOARD9:5
for b1 being non empty TopSpace
for b2, b3 being non empty Subset of b1 st b2 c= b3 & b2 is connected holds
ex b4 being Subset of b1 st
( b4 is_a_component_of b3 & b2 c= b4 )
proof end;

theorem Th6: :: GOBOARD9:6
for b1 being non empty TopSpace
for b2, b3, b4, b5 being Subset of b1 st b3 is connected & b4 is_a_component_of b5 & b2 c= b4 & b2 meets b3 & b3 c= b5 holds
b3 c= b4
proof end;

theorem Th7: :: GOBOARD9:7
for b1, b2 being Point of (TOP-REAL 2) holds LSeg b1,b2 is convex
proof end;

theorem Th8: :: GOBOARD9:8
for b1, b2 being Point of (TOP-REAL 2) holds LSeg b1,b2 is connected
proof end;

registration
cluster non empty convex Element of K40(the carrier of (TOP-REAL 2));
existence
ex b1 being Subset of (TOP-REAL 2) st
( b1 is convex & not b1 is empty )
proof end;
end;

theorem Th9: :: GOBOARD9:9
for b1, b2 being convex Subset of (TOP-REAL 2) holds b1 /\ b2 is convex
proof end;

theorem Th10: :: GOBOARD9:10
for b1 being FinSequence of (TOP-REAL 2) holds Rev (X_axis b1) = X_axis (Rev b1)
proof end;

theorem Th11: :: GOBOARD9:11
for b1 being FinSequence of (TOP-REAL 2) holds Rev (Y_axis b1) = Y_axis (Rev b1)
proof end;

Lemma12: for b1, b2 being non empty FinSequence of (TOP-REAL 2) st b2 = Rev b1 holds
GoB b2 = GoB b1
proof end;

registration
cluster non constant set ;
existence
not for b1 being FinSequence holds b1 is constant
proof end;
end;

registration
let c1 be non constant FinSequence;
cluster Rev a1 -> non constant ;
coherence
not Rev c1 is constant
proof end;
end;

definition
let c1 be standard special_circular_sequence;
redefine func Rev as Rev c1 -> standard special_circular_sequence;
coherence
Rev c1 is standard special_circular_sequence
proof end;
end;

theorem Th12: :: GOBOARD9:12
for b1 being non constant standard special_circular_sequence
for b2, b3 being Nat st b2 >= 1 & b3 >= 1 & b2 + b3 = len b1 holds
left_cell b1,b2 = right_cell (Rev b1),b3
proof end;

theorem Th13: :: GOBOARD9:13
for b1 being non constant standard special_circular_sequence
for b2, b3 being Nat st b2 >= 1 & b3 >= 1 & b2 + b3 = len b1 holds
left_cell (Rev b1),b2 = right_cell b1,b3
proof end;

theorem Th14: :: GOBOARD9:14
for b1 being non constant standard special_circular_sequence
for b2 being Nat st 1 <= b2 & b2 + 1 <= len b1 holds
ex b3, b4 being Nat st
( b3 <= len (GoB b1) & b4 <= width (GoB b1) & cell (GoB b1),b3,b4 = left_cell b1,b2 )
proof end;

theorem Th15: :: GOBOARD9:15
for b1 being Nat
for b2 being Go-board st b1 <= width b2 holds
Int (h_strip b2,b1) is convex
proof end;

theorem Th16: :: GOBOARD9:16
for b1 being Nat
for b2 being Go-board st b1 <= len b2 holds
Int (v_strip b2,b1) is convex
proof end;

theorem Th17: :: GOBOARD9:17
for b1, b2 being Nat
for b3 being Go-board st b1 <= len b3 & b2 <= width b3 holds
Int (cell b3,b1,b2) <> {}
proof end;

theorem Th18: :: GOBOARD9:18
for b1 being non constant standard special_circular_sequence
for b2 being Nat st 1 <= b2 & b2 + 1 <= len b1 holds
Int (left_cell b1,b2) <> {}
proof end;

theorem Th19: :: GOBOARD9:19
for b1 being non constant standard special_circular_sequence
for b2 being Nat st 1 <= b2 & b2 + 1 <= len b1 holds
Int (right_cell b1,b2) <> {}
proof end;

theorem Th20: :: GOBOARD9:20
for b1, b2 being Nat
for b3 being Go-board st b1 <= len b3 & b2 <= width b3 holds
Int (cell b3,b1,b2) is convex
proof end;

theorem Th21: :: GOBOARD9:21
for b1, b2 being Nat
for b3 being Go-board st b1 <= len b3 & b2 <= width b3 holds
Int (cell b3,b1,b2) is connected
proof end;

theorem Th22: :: GOBOARD9:22
for b1 being non constant standard special_circular_sequence
for b2 being Nat st 1 <= b2 & b2 + 1 <= len b1 holds
Int (left_cell b1,b2) is connected
proof end;

theorem Th23: :: GOBOARD9:23
for b1 being non constant standard special_circular_sequence
for b2 being Nat st 1 <= b2 & b2 + 1 <= len b1 holds
Int (right_cell b1,b2) is connected
proof end;

definition
let c1 be non constant standard special_circular_sequence;
4 < len c1 by GOBOARD7:36;
then E25: 1 + 1 < len c1 by XREAL_1:2;
then E26: Int (left_cell c1,1) <> {} by Th18;
E27: Int (right_cell c1,1) <> {} by E25, Th19;
func LeftComp c1 -> Subset of (TOP-REAL 2) means :Def1: :: GOBOARD9:def 1
( a2 is_a_component_of (L~ a1) ` & Int (left_cell a1,1) c= a2 );
existence
ex b1 being Subset of (TOP-REAL 2) st
( b1 is_a_component_of (L~ c1) ` & Int (left_cell c1,1) c= b1 )
proof end;
uniqueness
for b1, b2 being Subset of (TOP-REAL 2) st b1 is_a_component_of (L~ c1) ` & Int (left_cell c1,1) c= b1 & b2 is_a_component_of (L~ c1) ` & Int (left_cell c1,1) c= b2 holds
b1 = b2
proof end;
func RightComp c1 -> Subset of (TOP-REAL 2) means :Def2: :: GOBOARD9:def 2
( a2 is_a_component_of (L~ a1) ` & Int (right_cell a1,1) c= a2 );
existence
ex b1 being Subset of (TOP-REAL 2) st
( b1 is_a_component_of (L~ c1) ` & Int (right_cell c1,1) c= b1 )
proof end;
uniqueness
for b1, b2 being Subset of (TOP-REAL 2) st b1 is_a_component_of (L~ c1) ` & Int (right_cell c1,1) c= b1 & b2 is_a_component_of (L~ c1) ` & Int (right_cell c1,1) c= b2 holds
b1 = b2
proof end;
end;

:: deftheorem Def1 defines LeftComp GOBOARD9:def 1 :
for b1 being non constant standard special_circular_sequence
for b2 being Subset of (TOP-REAL 2) holds
( b2 = LeftComp b1 iff ( b2 is_a_component_of (L~ b1) ` & Int (left_cell b1,1) c= b2 ) );

:: deftheorem Def2 defines RightComp GOBOARD9:def 2 :
for b1 being non constant standard special_circular_sequence
for b2 being Subset of (TOP-REAL 2) holds
( b2 = RightComp b1 iff ( b2 is_a_component_of (L~ b1) ` & Int (right_cell b1,1) c= b2 ) );

theorem Th24: :: GOBOARD9:24
for b1 being non constant standard special_circular_sequence
for b2 being Nat st 1 <= b2 & b2 + 1 <= len b1 holds
Int (left_cell b1,b2) c= LeftComp b1
proof end;

theorem Th25: :: GOBOARD9:25
for b1 being non constant standard special_circular_sequence holds GoB (Rev b1) = GoB b1 by Lemma12;

theorem Th26: :: GOBOARD9:26
for b1 being non constant standard special_circular_sequence holds RightComp b1 = LeftComp (Rev b1)
proof end;

theorem Th27: :: GOBOARD9:27
for b1 being non constant standard special_circular_sequence holds RightComp (Rev b1) = LeftComp b1
proof end;

theorem Th28: :: GOBOARD9:28
for b1 being non constant standard special_circular_sequence
for b2 being Nat st 1 <= b2 & b2 + 1 <= len b1 holds
Int (right_cell b1,b2) c= RightComp b1
proof end;