Melt the butter in a large heavy-bottomed pot over medium-high heat. Add the celery, carrot, shallot and garlic; season with 1/2 teaspoon salt. Cook, stirring, until the vegetables are softened, about 5 minutes. Add the tomato paste and cook, stirring to coat, 1 minute. Sprinkle in the flour and stir until incorporated. Stir in the crushed tomatoes and chicken broth. Bring to a boil, then reduce the heat to medium low and simmer until the vegetables are very soft, about 20 minutes.
Working in small batches, puree the soup in a blender until smooth. Return to the pot over low heat; stir in the heavy cream and truffle oil.
Pour the soup into shot glasses or small cups; top with the popcorn and cheese. Photograph by Ralph Smith
Heat 1/4 cup vegetable oil with a few popcorn kernels in a large pot over medium heat until one kernel pops. Add 3/4 cup popcorn kernels and cover the pot; cook, shaking the pot occasionally, until the popping subsides. Makes 12 to 16 cups popcorn.