В программировании довольно плотно освещена тема иерархии программных сущностей. Это хорошо отражено в концепции наследования: в теории ООП подтип является частным случаем типа, и связан с ним отношением «является»(англ «is», например — кошка — это животное(его частный случай)).
Порождение этих обобщений лежит на совести программиста. И логично предположить, что следующим шагом, например в контексте ИИ, будет попытка научить делать эти обобщения компьютер.
Действительно, в человеческом мышлении это один из главных аспектов — выделение общности по неким общим признакам множества различных типов объектов, фактически, это является основой индукции(проверяем, что все слоны и мартышки имеют единое свойство -- фиолетовый цвет кожи:) — выделяем общность: фиолетовокожие:) соответственно — слоны и мартышки — подтип фиолетовокожих:))
Но как ни странно, я никогда не сталкивался с исследованиями, которые бы плотно касались данного вопроса, нет ни подобной парадигмы, ни книг, ничего.
Встречались ли Вы с чем то подобным, и если да, что можно почитать по этой теме?
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
Не уверен, что следующим шагом именно в рамках программирования как на дисциплины (ну или чем оно там является) будет что-то индуктивное. Всё-таки программирование это однозначность и только однозначность. Да, ты можешь не понимать, как оно работает и почему, но это всегда дедуктивные вещи. Впустить индукцию в программирование это на мой взгляд как-то мегаконцептуально), наверняка в таком случае не только наследования это коснётся, но и много чего ещё.
И совсем другое дело добавление таких вещей на мета-уровне. Некий продвинутый решарпер, который не только синтаксис правит, но по принципам ИИ индуктивно выискивает всякие такие штуки.