I'm writing an example of constructing logic, and I need to differentiate between an adult female dog, an adult male dog and a puppy and am searching for polite terms.

Unfortunately, the word "bitch" has impolite connotations, so I'd rather not use it, but I'm not sure of any other terms for a female dog. Likewise, I don't know of a gendered term for a a male dog, apart from 'dog'.

**Given the linguistic baggage that the term *'bitch'* has in non-specialist areas, is there an alternative, polite term for an female dog?**

For context: in the logic I'm describing, if the dog is young it is a *puppy*, otherwise if it's female it's a *term X*, or if it's male it is a *term Y*.