I have more than 1400 APT packages installed which specify their architecture as amd64. Around 180 are i386. At least some of the i386 packages have their amd64 counterpart installed as well.
I assumed only amd64 packages would be installed on a 64bit machine. Why do I have some i386 packages installed?
And, for bonus points, how does APT handle dealing with the same package in two architectures? Does it have some way of knowing those exact instances where it must install both?
FYI, I learned all this about the state of installed packages from my APT status file.