The finished potatoes should have a smooth and slightly elastic texture. White cheddar can be substituted for the Gruyere. For richer, stretchier aligot, double the mozzarella. Adapted from Cook's Illustrated, published March, 2009. Posted for ZWT5.
Place potatoes in large saucepan; add water to cover by 1 inch and add 1 tablespoon salt. Partially cover saucepan with lid and bring potatoes to boil over high heat. Reduce the heat to medium-low and simmer until potatoes are tender and just break apart when poked with a fork, 12 to 17 minutes. Drain potatoes and dry saucepan.
Transfer potatoes to a food processor (this step is important to get the aligot texture). Add butter, garlic, and 1 1/2 teaspoons salt. Pulse until butter is melted and incorporated into potatoes, about ten 1-second pulses. Add 1 cup milk and continue to process until potatoes are smooth and creamy, about 20 seconds, scraping down sides halfway through.
Return potato mixture to saucepan and set over medium heat. Stir in cheeses, 1 cup at a time, until incorporated. Continue to cook potatoes, stirring vigorously, until cheese is fully melted and mixture is smooth and elastic, 3 to 5 minutes. If mixture is difficult to stir and seems thick, stir in 2 tablespoons of milk at a time (up to 1/2 cup) until potatoes are loose and creamy. Season with salt and pepper. Serve immediately.