The source for plural rules (with machine-readable representation) can be found in the Unicode CLDR: http://www.unicode.org/cldr/charts/33/supplemental/language_...
But I think the Brazilian Portuguese rule in this chart for the cardinal 0 is wrong: I think it should be "other" (0 pontos) rather than "one" (0 ponto), just as in Spanish, English, and European Portuguese.
I've sent a note to a native speaker to check my intuition.