What is difference between 'epithet' and 'Teknonymy'? Are they same? Which one of the two relates to ancestors? The name with which one is known but that name is of one of his children, what do we call this in English? e.g. Arabic name: Abu Abdullah. Abdullah is the name of the son of the man who is known as Abu Abdullah.
Epithet is a much more general word than teknonym.
In reference to names, the term epithet is usually used for something like "the Terrible" in "Ivan the Terrible"; in Arabic names, "bin Musa" would usually be called a patronym and not an epithet. The problem is that we don't have a common term in English to describe "abu Abdullah"; epithet is slightly misleading, although technically accurate, and teknonym is a more specific term that hardly anybody will know the meaning of.
To be specific, an epithet is derived from some characteristic, a patronym is derived from your father's name, a matronym is derived from your mother's name, and a teknonym is derived from the name of one of your children.
"Abu Abdullah" is an example of a teknonym. But teknonyms are not generally used in English. The word teknonym is exceedingly rare and limited to scientific studies of naming practices around the world.
"Epithet" is rather more common, and can apply to an individual (She's Mary-who-makes-the-tea) "who makes the tea" is her epithet. It can also apply to groups
An epithet is a title that is added to a name and is so associated with it that it becomes part of the name. An example from Arabic history is Harun al-Rashid.
Teknonymy is the practice (or habit or tradition) of calling people by reference to a child's name.
Teknonym is a name based on teknonymy such as Abu Abdullah (but not all Kunyas; Abu Bakr is not a teknonym). See Teknonym on Wiktionary.