Rinse the lentils in cold water and set aside.
Heat the oil in a large non stick saucepan and saute the onion and garlic until softened but not brown. Roast the cumin, coriander, mustard seeds and cloves in a dry frying pan until they start to pop. Grind the seeds with a pestle and mortar or in a spice grinder. Add the ground spices to the onion and garlic and stir for 2 minutes. Add the tomatoes, sweet potato, stock and lentils. Bring to the boil before covering the pan, reducing the heat to simmer for 1 hour.
Serve with chopped coriander and yoghurt.