In a pot, combine 4 cups of water, the lentils, onion, garlic and bay leaf, and bring to a boil. You can add some celery tops for added flavor, if desired.
When water boils, reduce the heat and simmer, uncovered, until the lentils are tender, 20-30 minutes. Drain and let cool.
Remove the onion, garlic, bay leaf (and celery tops, if used). Season with salt and ground black pepper to taste.
In a saucepan or deep skillet heat the olive oil over medium-low heat. Add the diced carrots and cook, stirring, until tender, about 10 minutes. Add the garlic, stir to blend, and cook for 1 minute. Add the cooked lentils, spinach and soy sauce. Stir well, cover, and cook over low heat until the spinach is wilted, about 3-5 minutes. Serve over hot rice, if desired.