Я думаю, что Степико слишком строг к Пёрышкину (сам Пёрышкина не люблю). Про инварианты веса он не пишет, но принято, что "Вес — это сила, с которой тело действует на опору или подвес." И если шарик на динамометре опустить воду, то показания динамометра изменятся и значит изменится и вес (по определению, и никаких хитростей типа хитростей с релятивистской массой придумывать здесь не надо).
Теперь к делу. Пусть кубик с ребром а, удельным весом r2 плавает в жидкости с удельным весом r1 и погружен в неё на глубину h. Нажмём слегка на кубик и погрузим его еще на маленькую величину dh. Раз состояние было равновесное, энергия системы не изменилась (с точностью до 1 порядка). Но мы уменьшили потенциальную энергию кубика на a^3*r2*dh (вес*перемещение) и увеличили энергию жидкости - взяли объём из-под шарика и подняли на h. Это увеличение a^2*dh*r1*h (объем вытесненной*уд.вес*перемещение). Но энергия системы не изменилась! Значит a^3*r2*dh=a^2*dh*r1*h
Лишнее сократим, получим a*r2=r1*h. А это закон Архимеда для кубика (a^3*r2=a^2*h*r1).
Т.е. закон Архимеда - прямое следствие поиска системы состояния с минимальной энергией.
Кубик использовал для простоты. Аналогично можно вывести правило рычага (принцип виртуальной работы кажется).