Source: Hurley, Patrick J. A Concise Introduction to Logic (2014 12 ed, but ∃ 2017 13 ed). p. 92 Middle.
The previous section of this chapter explored the cognitive meaning of language in general. The cognitive meaning of terms comprises two kinds: intensional and extensional. The intensional meaning, or intension, consists of the qualities or attributes that the term connotes, and the extensional meaning, or extension, consists of the members of the class that the term denotes. For example, the intensional meaning of the term “cat” consists of the attributes of being furry, of having four legs, of moving in a certain way, of emitting certain sounds, and so on, while the extensional meaning consists of cats themselves—all the cats in the universe. The term connotes the attributes and denotes the cats.
The intensional meaning of a term is otherwise known as the connotation, and the extensional meaning is known as the denotation. Intension and extension are roughly equivalent to the more modern terms sense and reference, respectively. Also, note that logic uses the terms connotation and denotation differently from the way they are used in grammar. In grammar, connotation refers to the subtle nuances of a word, whereas denotation refers to the word’s direct and specific meaning.
I do not understand the word choices of con/de-notation. Because con/de-notation share the same root and differ only in prefix, I conjecture this difference in prefixes to distinguish the logical concepts above. To save space, I link to the references; but tell me if I should reproduce them.
Etymonline for connote, connotation, denote, denotation.
OED for connote, connotation, denote, denotation.
Wiktionary for connote, connotation, denote, denotation.