begin
theorem Th7: 
 for 
n, 
m, 
i1, 
j1, 
i2, 
j2 being    
Element of  
NAT   st 
i1 <= n & 
j1 <= m & 
i2 <= n & 
j2 <= m holds 
 ex 
fs1, 
fs2 being    
FinSequence of  
NAT  st 
( (  for 
i, 
k1, 
k2 being    
Element of  
NAT   st 
i in  dom fs1 & 
k1 = fs1 . i & 
k2 = fs2 . i holds 
( 
k1 <= n & 
k2 <= m ) ) & 
fs1 . 1 
= i1 & 
fs1 . (len fs1) = i2 & 
fs2 . 1 
= j1 & 
fs2 . (len fs2) = j2 &  
len fs1 =  len fs2 &  
len fs1 = ((((i1 -' i2) + (i2 -' i1)) + (j1 -' j2)) + (j2 -' j1)) + 1 & (  for 
i being    
Element of  
NAT   st 1 
<= i & 
i <  len fs1 holds 
fs1 /. i,
fs2 /. i,
fs1 /. (i + 1),
fs2 /. (i + 1) are_adjacent2  ) )
 
theorem 
 for 
n, 
m being    
Element of  
NAT   for 
S being    
set   for 
Y being   
Subset of 
S  for 
F being    
Matrix of 
n,
m, 
bool S  st  ex 
i, 
j being    
Element of  
NAT  st 
( 
i in  Seg n & 
j in  Seg m & 
F * (
i,
j) 
c= Y ) & (  for 
i1, 
j1, 
i2, 
j2 being    
Element of  
NAT   st 
i1 in  Seg n & 
i2 in  Seg n & 
j1 in  Seg m & 
j2 in  Seg m & 
i1,
j1,
i2,
j2 are_adjacent2  holds 
( 
F * (
i1,
j1) 
c= Y iff 
F * (
i2,
j2) 
c= Y ) ) holds 
 for 
i, 
j being    
Element of  
NAT   st 
i in  Seg n & 
j in  Seg m holds 
F * (
i,
j) 
c= Y