Ответ:

Житель Витебска преподаёт химию. Иван и Андрей не могут быть жителями Витебска: Иван не в Минске, но условие не запрещает ему Витебск; Андрей не в Витебске. Поэтому из данных нельзя сразу исключить вариант, что Иван живёт в Витебске. Проверим, можно ли получить единственный ответ.

Например, подходит такое распределение: Иван живёт в Витебске и преподаёт химию; Андрей живёт в Харькове и преподаёт математику; Борис живёт в Минске и преподаёт физику. Оно удовлетворяет всем указанным ограничениям. Но подходит и другое: Борис живёт в Витебске и преподаёт химию; Иван живёт в Харькове и преподаёт физику; Андрей живёт в Минске и преподаёт математику. Значит, исходные условия не определяют ответ однозначно.

Ответ: однозначно выяснить, кто где живёт и какой предмет преподаёт, по приведённым данным нельзя.