isFunc done
range/domain complete
intersection + union complete
inverse compiles
inverse compiles
isInjective compiles
fixed singleton tuple bug, added Calum's input
fixed non-exhaustive warnings
part3 complete
part3 complete