I don’t think most people ever reinvent the laws. I thought it was worth a try. Let’s try this next (there’s a chance it’s too hard but you did the same thing with nand so worth a try):
It turns out that {and, or, not} is a universal set of logic operators (this is closely related to stuff you may have heard about computational universality). You can construct all the other operators from them.
Assignment: Using {and, or, not}, construct xor, nor, implies and equality.
Max 60min.
PS This is standard logic. There are other types of logic (that you don’t need to know about) including reversible logic, where, given the outputs and the arrangement of operators used, you can figure out what the inputs were. Reversible logic is relevant to quantum computing and to computing with low energy usage.