In proving results in combinatorics several useful combinatorial rules or combinatorial principles are used. They include: