






"""simple docstring"""




from math import cos, sin





def 						__UpperCAmelCase      (					a_):
							snake_case_           =							float(_lowerCamelCase)
							return [[scaling_factor * int(x == y) for x in range(2)] for y in range(2)]





def 						__UpperCAmelCase      (					a_):
							snake_case_      ,		snake_case_           =							cos(_lowerCamelCase), sin(_lowerCamelCase)
							return [[c, -s], [s, c]]





def 						__UpperCAmelCase      (					a_):
							snake_case_      ,		snake_case_           =							cos(_lowerCamelCase), sin(_lowerCamelCase)
							snake_case_           =							c * s
							return [[c * c, cs], [cs, s * s]]





def 						__UpperCAmelCase      (					a_):
							snake_case_      ,		snake_case_           =							cos(_lowerCamelCase), sin(_lowerCamelCase)
							snake_case_           =							c * s
							return [[2 * c - 1, 2 * cs], [2 * cs, 2 * s - 1]]


print(f'    {scaling(5) = }')
print(f'  {rotation(45) = }')
print(f'{projection(45) = }')




print(f'{reflection(45) = }')













def 						__UpperCAmelCase      (					a_):
							return 1 if input_a == 0 else 0





def 						__UpperCAmelCase      (					):
							assert not_gate(0) == 1
							assert not_gate(1) == 0


if __name__ == "__main__":
	print(not_gate(0))
	print(not_gate(1))





