Предположим, что Митя не лжет. Тогда у него или красный или зеленый мяч. Если у него красный мяч, то он должен был соврать, однако его фраза "У меня мяч не желтый и не синий" полностью согласуется с этой ситуацией. Значит, у него зеленый мяч.
Предположим, что Петя не лжет. Тогда у него или красный или желтый мяч. Рассуждая аналогично, получаем, что если у него красный мяч, то он должен был соврать, однако его фраза "У меня мяч не синий" является истинной. Значит, у него желтый мяч.
Предположим, что Коля не лжет. Тогда у него или красный или синий мяч. Опять же, если у него красный мяч, то он должен был соврать, но его фраза "У меня мяч не зеленый" является истинной. Значит, у него синий мяч.
Оставшийся красный мяч находится к Васи, который и соврал, сказав фразу "У меня мяч не красный".
Предположим, что Петя не лжет. Тогда у него или красный или желтый мяч. Рассуждая аналогично, получаем, что если у него красный мяч, то он должен был соврать, однако его фраза "У меня мяч не синий" является истинной. Значит, у него желтый мяч.
Предположим, что Коля не лжет. Тогда у него или красный или синий мяч. Опять же, если у него красный мяч, то он должен был соврать, но его фраза "У меня мяч не зеленый" является истинной. Значит, у него синий мяч.
Оставшийся красный мяч находится к Васи, который и соврал, сказав фразу "У меня мяч не красный".
ответ: у Коли синий мяч