Algebraic actions of discrete groups: the p-adic method