added identity function, function composition, associativity, and identity