Soak the lentils and beans overnight in enough warm water or for 6 to 8 hours.
Drain out the water. Wash the lentils and beans and put them in a pressure cooker with 2 cups of water, 1 tsp cumin seeds and ¼ tsp turmeric powder. Pressure cook over medium heat for 4 to 6 whistles.
In the meantime prepare the curry or dal. Heat ghee and oil in a pan. When it is hot add the peppercorns, cinnamon, cloves, bay leafs, cardamom and remaining cumin seeds. When they begin to sizzle, add asafoetida.
Add chopped onions and stir fry them till it starts turning light brown in colour.
Add the garlic, ginger and chilli pastes. Stir fry till the garlic becomes light pink in colour.
Add remaining turmeric powder, coriander cumin, red chilli powders, garam masala and tomato puree.
Cook till the mixture becomes thick.
Mash the cooked lentils lightly. Add the tomato gravy, remaining water and salt to it.
Mix well and let it simmer over low heat for nearly 20 minutes.
Stir occasionally so that the dal does not stick at the bottom.
Add fresh cream. Mix well.
Garnish with coriander and butter. Serve.