Logic with types and naming changes

I was being silly and forgot that agda interprets an underscore in a function name specially, and so I changed to using a hyphen (except in the cases where I wanted the special treatment)