Impliesf(Notf(var any1), Notf(var any2)) when IsLogic(any1, any2) => any2.Implies(any1),
Orf(Andf(var any2, var any1), Andf(var any3, var any1a)) when any1 == any1a && IsLogic(any1, any2, any3) => any1 & (any2 | any3),
Andf(Orf(var any2, var any1), Orf(var any3, var any1a)) when any1 == any1a && IsLogic(any1, any2, any3) => any1 | (any2 & any3),
Andf(var any1, var any2) when(any1 == False || any2 == False) && IsLogic(any1, any2) => False,
Orf(var any1, var any2) when(any1 == True || any2 == True) && IsLogic(any1, any2) => True,
Orf(Notf(var any1), var any2) when IsLogic(any1, any2) => any1.Implies(any2),
Orf(Notf(var any1), Notf(var any2)) when IsLogic(any1, any2) => !(any1 & any2),
Andf(Notf(var any1), Notf(var any2)) when IsLogic(any1, any2) => !(any1 | any2),