An author is an agent who writes things. An author must have a name, which is its real name as an agent. The name as author may or may not be the agent's name, but usually is.
(=> (Author ?X) (Value-Cardinality ?X Agent.Name 1)) (=> (Author.Name $X $Y) (Author $X)) (=> (Penname $X $Y) (Author $X)) (=> (Doc.Author $X $Y) (Author $Y)) (Nth-Domain Doc.Author.Name 2 Author)