Put the potatoes in a pot and cover with cold water. Bring to the boil, then reduce the heat and simmer until the potatoes are cooked through and tender. Drain well, then return to the pot and add the milk and a pinch of salt and pepper. Mash well and set aside.
Meanwhile, warm the oil in a large frying pan set over a medium heat. Add the minced beef and cook for a few minutes, until it has started to brown, then transfer to a bowl with a slotted spoon and set aside. Pour out any excess oil in the frying pan and wipe it clean.
Set the pan back over a medium heat and melt the butter in it. Add the carrots and onion and cook for about 5 minutes, until the veg have started to soften. Stir in the flour and cook for 1 minute, then add the stock, parsley and thyme. Bring to the boil, then reduce the heat and simmer for about 5 minutes. Add the mince and bring back to the boil again, then remove from the heat.
Transfer to a pie dish and spread the mashed potatoes evenly on top. Cook in the oven for about 15 minutes, until the mince is piping hot and the mashed potato topping has started to turn golden. With 5 minutes to go, scatter the grated cheese on top.