Solve for numbers to appear on two six-sided dice

I have a small wooden calendar that uses two six-sided dice to display day of month. One die carries numbers 0, 1, 2, 6, 7, 8 and the other carries 0, 1, 2, 3, 4, 5. The six of course doubles as the nine.

Knowing the list of permutations is 01 through 31, with just a little guessing it was easy to arrive at which numbers need to appear on which die to meet the goal. How would these numbers be determined using only math?

-
Since you are leveraging something that is not math (The fact that 6 and 9 can be created using different orientations of the same glyph), you can't determine the numbers using only math. – Jonathan Rich Mar 14 '13 at 19:04
@JonathanRich: But we can accept that the symbols $6$ and $9$ can be interchanged and then go back doing math! – azimut Mar 14 '13 at 19:18
I don't know if I'd qualify your solution as math, except for very broad definitions of "math." The question cannot be solved except by process of elimination, and even then there are multiple answers. – Jonathan Rich Mar 14 '13 at 19:20

Your use of 'solve' suggests that the configuration you've laid out is the only one that works, but in fact almost the opposite is true; many different assignments of digits will give the correct answer. azimut's answer hits on the key piece of the puzzle: because the 11th and the 22nd are both valid days of the month, then 1 and 2 have to appear on both dice. Because 0 can be followed by any other number, 0 must also appear on both dice (if 0 only appeared on one die, then all of the numbers 1-9 would have to appear on the other, and that's more than a d6 can hold even with the 6-for-9 swap).

So we already know that our two dice are 012ABC and 012XYZ, where ABCXYZ is some combination of the six digits 3-8 (with 9, again, being forced onto the 'flip 6'). But since 0 and 1 appear on both dice then it doesn't matter which die has the 3; we'll always be able to represent the 30th and the 31st. And since no date requires two numbers each of which is at least 3, it doesn't matter which way we lay out the digits among the two dice; we'll always be able to form every date by choosing whichever die has our 1s digit as the second die and using the appropriate one of 0, 1, 2 on the other die. This means that (012345, 012678) is a valid answer, but so is (012357, 012468) or (012347, 012568), etc - in fact, there are exactly $\dfrac{6!}{2\cdot3!\cdot3!} = 10$ different ways of assigning the digits 3-8 among the two dice, and all of them 'work' in that they can represent all the dates of the month.

-
Sorry I offended with my wording. I meant nothing by using the word "solve" except to get the title of my question to fit in the space provided. – Kat Mar 26 '13 at 21:07
@Kat No offense taken, I assure you! I just meant that 'solve' is really the wrong word for the problem since the answer turns out to be far from unique; it was more a cautionary note that the vocabulary points you in the wrong direction. – Steven Stadnicki Mar 26 '13 at 21:15
Why will it be 10 not 20 Steven given that we can choose 3 numbers out of 6 in 20 ways not just 10. – vkaul11 Jul 10 '14 at 15:14
@vkaul11 Because the other three faces on the dice (012) are indistinguishable, so for instance there's no difference between putting 356 on A and 478 on B vs. putting 478 on A and 356 on B. This is where the factor of 2 in my denominator comes from. – Steven Stadnicki Jul 10 '14 at 15:29
@vkaul11 Another way of thinking about it: fix the 3 to be on die A. Now we have to choose two out of the remaining five numbers to be on die A, and there are ${5\choose 2}=10$ ways of doing so. – Steven Stadnicki Jul 10 '14 at 15:31

Wow, didn't know that system!

Why does the system work?

For any number of a day involving only the digits 0,1 or 2 (these are day 01, 02, 03, 10, 11, 12, 20, 21, 22 of the month) there are two possiblities, since both dices have the right digits.

For any other number of a day there is only one possibility: There is exactly one digit which is not a 0, 1 or 2. If it is 3, 4 or 5, you have to use the second dice for it. If it is 6, 7, 8, 9 or 0, you have to use the first dice (not that 6 can also be used as 9).

Note that this system would still work if there are months with 32 days, but not for 33 days any more.

How can we find such a numbering system?

Now we forget about the numbering system and want to find a way put digits on two dice such that every day number 01, 02,..., 31 can be represented.

From the days 11 and 22 we see that both dice must have the digits 1 and 2. Now there are 8 blank sides left. On one dice there must be a digit 0. Since together with the other dice we can only display at most 7 combinations involving a 0 (using the trick that 6 and 9 are the same), but we need all the combinations 01,02,03,04,05,06,07,08,09, there must be a 0 also on the other dice. Now there are 6 blank sides left, which we have to use for the remaining digits 3,4,5,6,7,8 (9 is represented by 6). It is easy to see that we are free to distribute those 6 digits to the 2 dice in any way we like (since they only occur in combinations with 0, 1 or 2).

-
I think he is asking, if you knew this fact, but not the dice, how would you mathematically determine the dice, not show that the dice work. – Thomas Andrews Mar 14 '13 at 19:02
@ThomasAndrews: ok, thank you! I've added some information on that. – azimut Mar 14 '13 at 19:13
I'm a she :-) And yes that is what I was asking. Thank you to all. – Kat Mar 26 '13 at 21:08

If you are allowed to use just 1 die. I.e., you don't have to use both dice.
For example, if you are allowed to display the number 5 without preceding it with a 0, then the following will work with no need to "flip" the 6.

123456 012789

The key is to make sure that 1 and 2 are on both dice, and the 0 and the 3 are on different dice. It doesn't matter where you put the remaining numbers.

-