School Commit Init

This commit is contained in:
2024-08-31 12:07:21 +03:00
commit 0b130ee18c
2801 changed files with 4720552 additions and 0 deletions
@@ -0,0 +1,114 @@
import itertools
import time
def operation(x,y,R):
"""
:params:
x: int
y: int
R: list of tuples
:return:
int
This function returns the result of the operation R on x and y
"""
for relation in R:
if relation[0]==x and relation[1]==y:
return relation[2]
def associativity_checker(n,R):
"""
:params:
n: int
R: list of tuples
:return:
bool
This function checks if the operation R is associative or not. It returns True if it is associative and False otherwise.
"""
for i in range(n):
for j in range(n):
for k in range(n):
if operation(operation(i,j,R),k,R)!=operation(i,operation(j,k,R),R):
return False
return True
def generate_all_operations(n):
"""
:params:
n: int
:return:
list of lists of tuples
This function generates all possible operations on a set of n elements. It returns a list of all possible operations.
"""
R=[]
values = set(range(n))
operations_results = itertools.product(values,repeat=n**2)
f = open(f"output_n_{n}.txt","w")
for operation_result in operations_results:
op=[]
for i in values:
for j in values:
op.append((i,j,operation_result[i*n+j]))
if associativity_checker(n,op):
R.append(op)
f.write("\n\n")
f.write(' |')
for i in range(n):
f.write(str(i)+"|")
for i in range(n):
f.write("\n"+"-+"*(n+1)+"\n")
f.write(str(i)+"|")
for j in range(n):
f.write(str(operation(i,j,op))+"|")
f.close()
return R
def main():
print("Enter the number of elements in the set. Number must be smaller than 4")
n=int(input())
data = generate_all_operations(n)
print(len(data))
count=0
for i in data:
if associativity_checker(n,i):
print(i)
count+=1
print(count)
def file_handle(n):
"""
:params:
n: int
:return:
None
This function generates all possible operations on a set of n elements and writes the results to a file. It also writes the number of associative operations.
"""
semi_groups = generate_all_operations(n)
f = open(f"output_n_{n}.txt","w")
f.write("Number of elements in the set: "+str(n)+"\n")
f.write("Number of associative operations: "+str(len(semi_groups))+"\n")
for op in semi_groups:
f.write("\n\n")
f.write(' |')
for i in range(n):
f.write(str(i)+"|")
for i in range(n):
f.write("\n"+"-+"*(n+1)+"\n")
f.write(str(i)+"|")
for j in range(n):
f.write(str(operation(i,j,op))+"|")
f.close()
if __name__=="__main__":
# file_handle(1)
# file_handle(2)
# file_handle(3)
# file_handle(4)
main()
@@ -0,0 +1,7 @@
Number of elements in the set: 1
Number of associative operations: 1
|0|
-+-+
0|0|
@@ -0,0 +1,51 @@
Number of elements in the set: 2
Number of associative operations: 8
|0|1|
-+-+-+
0|0|0|
-+-+-+
1|0|1|
|0|1|
-+-+-+
0|0|1|
-+-+-+
1|0|1|
|0|1|
-+-+-+
0|0|1|
-+-+-+
1|1|1|
|0|1|
-+-+-+
0|0|1|
-+-+-+
1|1|0|
|0|1|
-+-+-+
0|0|0|
-+-+-+
1|0|0|
|0|1|
-+-+-+
0|1|0|
-+-+-+
1|0|1|
|0|1|
-+-+-+
0|0|0|
-+-+-+
1|1|1|
|0|1|
-+-+-+
0|1|1|
-+-+-+
1|1|1|
@@ -0,0 +1,907 @@
Number of elements in the set: 3
Number of associative operations: 113
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|0|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|2|0|1|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|1|2|0|
|0|1|2|
-+-+-+-+
0|0|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|0|0|
|0|1|2|
-+-+-+-+
0|2|1|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|0|0|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|0|2|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|2|1|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|2|0|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|2|0|2|
-+-+-+-+
1|2|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|0|1|
-+-+-+-+
1|0|1|0|
-+-+-+-+
2|1|0|1|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|2|2|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|2|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|0|0|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|1|1|
|0|1|2|
-+-+-+-+
0|1|1|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|2|2|1|
|0|1|2|
-+-+-+-+
0|2|2|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|2|2|1|
|0|1|2|
-+-+-+-+
0|0|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|2|1|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|2|2|0|
|0|1|2|
-+-+-+-+
0|2|2|0|
-+-+-+-+
1|2|2|0|
-+-+-+-+
2|0|0|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|0|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|1|0|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|2|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|2|1|
-+-+-+-+
1|2|1|2|
-+-+-+-+
2|1|2|1|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|1|0|1|
-+-+-+-+
2|0|1|0|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|1|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|1|0|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|1|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|2|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|1|1|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|1|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|0|
-+-+-+-+
2|0|0|2|
|0|1|2|
-+-+-+-+
0|1|2|2|
-+-+-+-+
1|2|2|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|1|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|0|1|
-+-+-+-+
2|0|0|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|2|0|
-+-+-+-+
2|0|0|0|
|0|1|2|
-+-+-+-+
0|2|1|2|
-+-+-+-+
1|1|2|1|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|2|0|0|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|2|2|
|0|1|2|
-+-+-+-+
0|0|2|2|
-+-+-+-+
1|2|2|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|0|0|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|2|2|
-+-+-+-+
1|1|2|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|2|0|
-+-+-+-+
1|2|0|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|2|0|0|
-+-+-+-+
1|0|2|2|
-+-+-+-+
2|0|2|2|
|0|1|2|
-+-+-+-+
0|1|0|0|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|1|1|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|2|0|
-+-+-+-+
2|2|0|1|
|0|1|2|
-+-+-+-+
0|1|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|0|
|0|1|2|
-+-+-+-+
0|2|2|2|
-+-+-+-+
1|2|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|2|2|
|0|1|2|
-+-+-+-+
0|2|2|2|
-+-+-+-+
1|2|2|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|0|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|2|1|2|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|0|1|1|
-+-+-+-+
1|1|0|0|
-+-+-+-+
2|1|0|0|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|0|0|
-+-+-+-+
2|0|0|0|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|2|0|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|0|1|0|
-+-+-+-+
2|0|1|0|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|0|0|2|
-+-+-+-+
2|0|0|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|0|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|0|
-+-+-+-+
2|0|2|0|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|2|2|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|2|2|
-+-+-+-+
2|0|2|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|0|2|
|0|1|2|
-+-+-+-+
0|2|1|2|
-+-+-+-+
1|2|1|2|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|1|1|
|0|1|2|
-+-+-+-+
0|0|2|2|
-+-+-+-+
1|2|0|0|
-+-+-+-+
2|2|0|0|
|0|1|2|
-+-+-+-+
0|0|1|1|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|1|1|
|0|1|2|
-+-+-+-+
0|1|1|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|1|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|0|0|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|1|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|1|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|0|2|2|
-+-+-+-+
1|0|2|2|
-+-+-+-+
2|0|2|2|
|0|1|2|
-+-+-+-+
0|2|2|1|
-+-+-+-+
1|2|2|1|
-+-+-+-+
2|1|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|1|1|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|2|1|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|2|2|
-+-+-+-+
1|2|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|1|0|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|1|2|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|0|0|
-+-+-+-+
2|0|0|1|
|0|1|2|
-+-+-+-+
0|1|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|2|2|
|0|1|2|
-+-+-+-+
0|2|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|1|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|0|
-+-+-+-+
2|0|0|0|
|0|1|2|
-+-+-+-+
0|2|2|2|
-+-+-+-+
1|2|0|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|1|
|0|1|2|
-+-+-+-+
0|0|1|2|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|2|2|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|0|0|
|0|1|2|
-+-+-+-+
0|1|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|0|0|2|
-+-+-+-+
2|2|2|0|
|0|1|2|
-+-+-+-+
0|0|1|1|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|1|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|2|1|1|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|1|1|1|
-+-+-+-+
1|1|1|1|
-+-+-+-+
2|1|1|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|0|0|
-+-+-+-+
2|0|0|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|2|2|
|0|1|2|
-+-+-+-+
0|0|0|0|
-+-+-+-+
1|2|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|0|2|
-+-+-+-+
1|1|1|2|
-+-+-+-+
2|2|2|2|
|0|1|2|
-+-+-+-+
0|0|1|0|
-+-+-+-+
1|0|1|0|
-+-+-+-+
2|0|1|2|
|0|1|2|
-+-+-+-+
0|0|2|2|
-+-+-+-+
1|0|1|2|
-+-+-+-+
2|0|2|2|
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,104 @@
import itertools
import numpy as np
class Vector:
"""
This class represents a vector in Z2^n and has the following methods:
__init__(self, *args): This method initializes the vector with the values passed as arguments.
__add__(self, other): This method returns the sum of two vectors.
__mul__(self, value): This method returns the product of a vector and a scalar.
__str__(self): This method returns the string representation of the vector.
__repr__(self): This method returns the string representation of the vector.
dereference(self): This method returns the values of the vector.
"""
def __init__(self, *args):
self.values = args
def __add__(self, other):
return Vector(*[(x + y)%2 for x, y in zip(self.values, other.values)])
def __mul__(self, value):
if value == 0 or value == 1:
return Vector(*[x * value for x in self.values])
else:
raise ValueError("The value must be 0 or 1")
def __str__(self):
return str(self.values)
def __repr__(self):
return str(self.values)
def __eq__(self, __o: object) -> bool:
for i in range(len(self.values)):
if self.values[i] != __o.values[i]:
return False
return True
def dereference(self):
return self.values
def generate_all_vectors(n):
"""
:params:
n: int
:return:
list of Vector objects
This function generates all possible vectors in Z2^n and returns a list of all possible vectors.
"""
return [Vector(*x) for x in itertools.product([0, 1], repeat=n)]
def generate_all_bases(n):
"""
:params:
n: int
:return:
list of lists of Vector objects
This function generates all possible bases of Z2^n and returns a list of all possible bases.
"""
possible_bases = list(itertools.product(generate_all_vectors(n), repeat=n))
bases = []
for base in possible_bases:
if is_linearly_independent(base):
bases.append(base)
return bases
def is_linearly_independent(vectors):
"""
:params:
vectors: list of Vector objects
:return:
bool
This function checks if the vectors passed as arguments are linearly independent or not. It returns True if they are linearly independent and False otherwise.
"""
z2=[0,1]
for scalar in list(itertools.product(z2, repeat=len(vectors))):
if scalar == tuple([0 for i in range(len(vectors))]):
continue
vector = Vector(*[0 for i in range(len(vectors[0].dereference()))])
for i in range(len(vectors)):
vector += vectors[i] * scalar[i]
if vector == Vector(*[0 for i in range(len(vectors[0].dereference()))]):
return False
return True
def main():
n = int(input("Enter the dimension of the vector space: "))
bases = generate_all_bases(n)
print("The bases are: {}".format(bases))
print("The number of bases for the vector space is: {}".format(len(bases)))
def file_handle(n):
"""
:params:
n: int
This function generates all possible bases of Z2^n and writes them to a file.
The file is named output_n_n.txt where n is the dimension of the vector space.
"""
bases = generate_all_bases(n)
with open(f"output_n_{n}.txt", "w") as f:
f.write("The number of bases for the vector space Z2^{} is: {}\n".format(n,len(bases)))
f.write("The bases are:\n")
for base in bases:
f.write(str(base) + "\n")
if __name__ == "__main__":
file_handle(1)
file_handle(2)
file_handle(3)
file_handle(4)
# main()
@@ -0,0 +1,3 @@
The number of bases for the vector space Z2^1 is: 1
The bases are:
((1,),)
@@ -0,0 +1,8 @@
The number of bases for the vector space Z2^2 is: 6
The bases are:
((0, 1), (1, 0))
((0, 1), (1, 1))
((1, 0), (0, 1))
((1, 0), (1, 1))
((1, 1), (0, 1))
((1, 1), (1, 0))
@@ -0,0 +1,170 @@
The number of bases for the vector space Z2^3 is: 168
The bases are:
((0, 0, 1), (0, 1, 0), (1, 0, 0))
((0, 0, 1), (0, 1, 0), (1, 0, 1))
((0, 0, 1), (0, 1, 0), (1, 1, 0))
((0, 0, 1), (0, 1, 0), (1, 1, 1))
((0, 0, 1), (0, 1, 1), (1, 0, 0))
((0, 0, 1), (0, 1, 1), (1, 0, 1))
((0, 0, 1), (0, 1, 1), (1, 1, 0))
((0, 0, 1), (0, 1, 1), (1, 1, 1))
((0, 0, 1), (1, 0, 0), (0, 1, 0))
((0, 0, 1), (1, 0, 0), (0, 1, 1))
((0, 0, 1), (1, 0, 0), (1, 1, 0))
((0, 0, 1), (1, 0, 0), (1, 1, 1))
((0, 0, 1), (1, 0, 1), (0, 1, 0))
((0, 0, 1), (1, 0, 1), (0, 1, 1))
((0, 0, 1), (1, 0, 1), (1, 1, 0))
((0, 0, 1), (1, 0, 1), (1, 1, 1))
((0, 0, 1), (1, 1, 0), (0, 1, 0))
((0, 0, 1), (1, 1, 0), (0, 1, 1))
((0, 0, 1), (1, 1, 0), (1, 0, 0))
((0, 0, 1), (1, 1, 0), (1, 0, 1))
((0, 0, 1), (1, 1, 1), (0, 1, 0))
((0, 0, 1), (1, 1, 1), (0, 1, 1))
((0, 0, 1), (1, 1, 1), (1, 0, 0))
((0, 0, 1), (1, 1, 1), (1, 0, 1))
((0, 1, 0), (0, 0, 1), (1, 0, 0))
((0, 1, 0), (0, 0, 1), (1, 0, 1))
((0, 1, 0), (0, 0, 1), (1, 1, 0))
((0, 1, 0), (0, 0, 1), (1, 1, 1))
((0, 1, 0), (0, 1, 1), (1, 0, 0))
((0, 1, 0), (0, 1, 1), (1, 0, 1))
((0, 1, 0), (0, 1, 1), (1, 1, 0))
((0, 1, 0), (0, 1, 1), (1, 1, 1))
((0, 1, 0), (1, 0, 0), (0, 0, 1))
((0, 1, 0), (1, 0, 0), (0, 1, 1))
((0, 1, 0), (1, 0, 0), (1, 0, 1))
((0, 1, 0), (1, 0, 0), (1, 1, 1))
((0, 1, 0), (1, 0, 1), (0, 0, 1))
((0, 1, 0), (1, 0, 1), (0, 1, 1))
((0, 1, 0), (1, 0, 1), (1, 0, 0))
((0, 1, 0), (1, 0, 1), (1, 1, 0))
((0, 1, 0), (1, 1, 0), (0, 0, 1))
((0, 1, 0), (1, 1, 0), (0, 1, 1))
((0, 1, 0), (1, 1, 0), (1, 0, 1))
((0, 1, 0), (1, 1, 0), (1, 1, 1))
((0, 1, 0), (1, 1, 1), (0, 0, 1))
((0, 1, 0), (1, 1, 1), (0, 1, 1))
((0, 1, 0), (1, 1, 1), (1, 0, 0))
((0, 1, 0), (1, 1, 1), (1, 1, 0))
((0, 1, 1), (0, 0, 1), (1, 0, 0))
((0, 1, 1), (0, 0, 1), (1, 0, 1))
((0, 1, 1), (0, 0, 1), (1, 1, 0))
((0, 1, 1), (0, 0, 1), (1, 1, 1))
((0, 1, 1), (0, 1, 0), (1, 0, 0))
((0, 1, 1), (0, 1, 0), (1, 0, 1))
((0, 1, 1), (0, 1, 0), (1, 1, 0))
((0, 1, 1), (0, 1, 0), (1, 1, 1))
((0, 1, 1), (1, 0, 0), (0, 0, 1))
((0, 1, 1), (1, 0, 0), (0, 1, 0))
((0, 1, 1), (1, 0, 0), (1, 0, 1))
((0, 1, 1), (1, 0, 0), (1, 1, 0))
((0, 1, 1), (1, 0, 1), (0, 0, 1))
((0, 1, 1), (1, 0, 1), (0, 1, 0))
((0, 1, 1), (1, 0, 1), (1, 0, 0))
((0, 1, 1), (1, 0, 1), (1, 1, 1))
((0, 1, 1), (1, 1, 0), (0, 0, 1))
((0, 1, 1), (1, 1, 0), (0, 1, 0))
((0, 1, 1), (1, 1, 0), (1, 0, 0))
((0, 1, 1), (1, 1, 0), (1, 1, 1))
((0, 1, 1), (1, 1, 1), (0, 0, 1))
((0, 1, 1), (1, 1, 1), (0, 1, 0))
((0, 1, 1), (1, 1, 1), (1, 0, 1))
((0, 1, 1), (1, 1, 1), (1, 1, 0))
((1, 0, 0), (0, 0, 1), (0, 1, 0))
((1, 0, 0), (0, 0, 1), (0, 1, 1))
((1, 0, 0), (0, 0, 1), (1, 1, 0))
((1, 0, 0), (0, 0, 1), (1, 1, 1))
((1, 0, 0), (0, 1, 0), (0, 0, 1))
((1, 0, 0), (0, 1, 0), (0, 1, 1))
((1, 0, 0), (0, 1, 0), (1, 0, 1))
((1, 0, 0), (0, 1, 0), (1, 1, 1))
((1, 0, 0), (0, 1, 1), (0, 0, 1))
((1, 0, 0), (0, 1, 1), (0, 1, 0))
((1, 0, 0), (0, 1, 1), (1, 0, 1))
((1, 0, 0), (0, 1, 1), (1, 1, 0))
((1, 0, 0), (1, 0, 1), (0, 1, 0))
((1, 0, 0), (1, 0, 1), (0, 1, 1))
((1, 0, 0), (1, 0, 1), (1, 1, 0))
((1, 0, 0), (1, 0, 1), (1, 1, 1))
((1, 0, 0), (1, 1, 0), (0, 0, 1))
((1, 0, 0), (1, 1, 0), (0, 1, 1))
((1, 0, 0), (1, 1, 0), (1, 0, 1))
((1, 0, 0), (1, 1, 0), (1, 1, 1))
((1, 0, 0), (1, 1, 1), (0, 0, 1))
((1, 0, 0), (1, 1, 1), (0, 1, 0))
((1, 0, 0), (1, 1, 1), (1, 0, 1))
((1, 0, 0), (1, 1, 1), (1, 1, 0))
((1, 0, 1), (0, 0, 1), (0, 1, 0))
((1, 0, 1), (0, 0, 1), (0, 1, 1))
((1, 0, 1), (0, 0, 1), (1, 1, 0))
((1, 0, 1), (0, 0, 1), (1, 1, 1))
((1, 0, 1), (0, 1, 0), (0, 0, 1))
((1, 0, 1), (0, 1, 0), (0, 1, 1))
((1, 0, 1), (0, 1, 0), (1, 0, 0))
((1, 0, 1), (0, 1, 0), (1, 1, 0))
((1, 0, 1), (0, 1, 1), (0, 0, 1))
((1, 0, 1), (0, 1, 1), (0, 1, 0))
((1, 0, 1), (0, 1, 1), (1, 0, 0))
((1, 0, 1), (0, 1, 1), (1, 1, 1))
((1, 0, 1), (1, 0, 0), (0, 1, 0))
((1, 0, 1), (1, 0, 0), (0, 1, 1))
((1, 0, 1), (1, 0, 0), (1, 1, 0))
((1, 0, 1), (1, 0, 0), (1, 1, 1))
((1, 0, 1), (1, 1, 0), (0, 0, 1))
((1, 0, 1), (1, 1, 0), (0, 1, 0))
((1, 0, 1), (1, 1, 0), (1, 0, 0))
((1, 0, 1), (1, 1, 0), (1, 1, 1))
((1, 0, 1), (1, 1, 1), (0, 0, 1))
((1, 0, 1), (1, 1, 1), (0, 1, 1))
((1, 0, 1), (1, 1, 1), (1, 0, 0))
((1, 0, 1), (1, 1, 1), (1, 1, 0))
((1, 1, 0), (0, 0, 1), (0, 1, 0))
((1, 1, 0), (0, 0, 1), (0, 1, 1))
((1, 1, 0), (0, 0, 1), (1, 0, 0))
((1, 1, 0), (0, 0, 1), (1, 0, 1))
((1, 1, 0), (0, 1, 0), (0, 0, 1))
((1, 1, 0), (0, 1, 0), (0, 1, 1))
((1, 1, 0), (0, 1, 0), (1, 0, 1))
((1, 1, 0), (0, 1, 0), (1, 1, 1))
((1, 1, 0), (0, 1, 1), (0, 0, 1))
((1, 1, 0), (0, 1, 1), (0, 1, 0))
((1, 1, 0), (0, 1, 1), (1, 0, 0))
((1, 1, 0), (0, 1, 1), (1, 1, 1))
((1, 1, 0), (1, 0, 0), (0, 0, 1))
((1, 1, 0), (1, 0, 0), (0, 1, 1))
((1, 1, 0), (1, 0, 0), (1, 0, 1))
((1, 1, 0), (1, 0, 0), (1, 1, 1))
((1, 1, 0), (1, 0, 1), (0, 0, 1))
((1, 1, 0), (1, 0, 1), (0, 1, 0))
((1, 1, 0), (1, 0, 1), (1, 0, 0))
((1, 1, 0), (1, 0, 1), (1, 1, 1))
((1, 1, 0), (1, 1, 1), (0, 1, 0))
((1, 1, 0), (1, 1, 1), (0, 1, 1))
((1, 1, 0), (1, 1, 1), (1, 0, 0))
((1, 1, 0), (1, 1, 1), (1, 0, 1))
((1, 1, 1), (0, 0, 1), (0, 1, 0))
((1, 1, 1), (0, 0, 1), (0, 1, 1))
((1, 1, 1), (0, 0, 1), (1, 0, 0))
((1, 1, 1), (0, 0, 1), (1, 0, 1))
((1, 1, 1), (0, 1, 0), (0, 0, 1))
((1, 1, 1), (0, 1, 0), (0, 1, 1))
((1, 1, 1), (0, 1, 0), (1, 0, 0))
((1, 1, 1), (0, 1, 0), (1, 1, 0))
((1, 1, 1), (0, 1, 1), (0, 0, 1))
((1, 1, 1), (0, 1, 1), (0, 1, 0))
((1, 1, 1), (0, 1, 1), (1, 0, 1))
((1, 1, 1), (0, 1, 1), (1, 1, 0))
((1, 1, 1), (1, 0, 0), (0, 0, 1))
((1, 1, 1), (1, 0, 0), (0, 1, 0))
((1, 1, 1), (1, 0, 0), (1, 0, 1))
((1, 1, 1), (1, 0, 0), (1, 1, 0))
((1, 1, 1), (1, 0, 1), (0, 0, 1))
((1, 1, 1), (1, 0, 1), (0, 1, 1))
((1, 1, 1), (1, 0, 1), (1, 0, 0))
((1, 1, 1), (1, 0, 1), (1, 1, 0))
((1, 1, 1), (1, 1, 0), (0, 1, 0))
((1, 1, 1), (1, 1, 0), (0, 1, 1))
((1, 1, 1), (1, 1, 0), (1, 0, 0))
((1, 1, 1), (1, 1, 0), (1, 0, 1))
File diff suppressed because it is too large Load Diff