Мы объясним, что такое формальные языки, их характеристики, примеры и типы. А также их отличия от естественных языков
Формальный язык организован с помощью ограниченного набора правил комбинирования
Что такое формальный язык?
Формальный язык – это искусственный язык, который, в отличие от естественных языков, не ориентирован на обычное человеческое общение , а на определение и применение определенного набора правил в конкретной среде. Он состоит из ряда базовых символов, которые объединяются в строки для формирования сложных выражений
Символы составляют алфавит формального языка, а строки – слова. Как комбинация символов, так и интерпретация строк осуществляется в соответствии со строгими правилами, установленными заранее, которые не допускают исключений; вместе эти правила образуют грамматику языка
В отличие от креативности и сложности естественного языка, которые позволяют использовать его в самых разных ситуациях, формальные языки были разработаны для использования в очень точных контекстах. Область их применения включает логику математику информатику лингвистику
Обсуждаемые здесь формальные языки не следует путать с формальным лингвистическим регистром (также иногда называемым формальным языком ), соответствующим тщательному и правильному использованию языка , которое подходит для определенных коммуникативных ситуаций, в отличие от неформального регистра , в котором используются разговорные фразы и выражения
Формальные типы языков
В статье, опубликованной в 1956 году, американский лингвист Ноам Хомский (1928-) установил четыре типа формальных языков в зависимости от порождающих их грамматик. В контексте формального языка грамматика понимается как набор правил для формирования правильных строк символов
Для понимания классификации Хомского – по крайней мере, в ее наиболее общих аспектах – необходимо помнить, что формальная грамматика состоит из четырех компонентов:
- Терминальные символы (∑) . Они составляют основные элементы языка (алфавит).
- Нетерминальные символы (N) . Иногда их называют синтаксическими переменными, они носят вспомогательный характер; они выражают промежуточные состояния в процессе порождения слова. Они не являются частью языка.
- Начальный символ или аксиома (S ∈ N) . Нетерминальный начальный символ, из которого образуется любое из слов языка.
- Набор производственных правил (P) . Это правила, которые, начиная с исходного символа, позволяют выполнять необходимые преобразования для получения слов языка, заменяя нетерминальные символы терминальными.
Хомский описал следующие четыре типа формальных языков:
- Тип 3: регулярные или линейные языки. Те, которые генерируются регулярными грамматиками. Их строки характеризуются линейными зависимостями. Это означает, что положение символа в строке зависит только от предшествующего ему символа. Квалификация регулярных, присвоенная этому типу языков, обусловлена тем, что их строки содержат закономерности или повторения одних и тех же символов.
- Тип 2: контекстно-независимые языки. Те, которые могут быть распознаны с помощью контекстно-свободной грамматики. Произведения грамматик, порождающих эти языки, подчиняются правилу, согласно которому нетерминальный символ всегда может быть заменен строкой нетерминальных или терминальных символов, независимо от контекста, в котором он встречается. Такие языки наиболее широко развиты, так как они лежат в основе большинства языков программирования
- Тип 1: Контекстно-зависимые языки. Те, которые определяются контекстно-зависимыми грамматиками. Они узнаваемы, поскольку позволяют заменять нетерминальные символы только в определенных контекстах. Произведения грамматик, порождающих эти языки, характеризуются одним нетерминальным символом в левой части; их правая часть может состоять из терминального и нетерминального символа. Это тот тип языков, который имеет наиболее ограниченное производство.
- Тип 0: свободные или рекурсивно перечислимые языки. Они отвечают на свободные грамматики. Произведения могут содержать терминальные и нетерминальные строки как с правой, так и с левой стороны.
Между четырьмя типами языков существует иерархическая связь, где каждый тип включает в себя другие, так что языки с более низким номером охватывают языки с более высоким номером, как показано на следующей диаграмме:
Приложения формальных языков
Основные приложения формальных языков находятся в области информатики, логики и математики
- В компьютерной науке формальные языки являются основой для определения языков программирования.
- В символической логике (также называемой формальной логикой) формальные языки используются для ясного и простого выражения предложений рассуждений с целью определения их истинности.
- В математике формальные языки используются для представления отношений, операций и формул.
- В лингвистике формальные языки изучаются в их синтаксических аспектах, чтобы понять закономерности естественных языков.
Примеры формальных языков
Примеры формальных языков:
- Компьютерные науки. Ниже приведен пример символьной строки из языка программирования C.char str 12 = welcome;где char – символьная переменная, а str – строка. Строка символов приветствуется.
- Логика . Следующие комбинации символов выражают типы высказываний: p∧q означает p и q, где p и q – два предложения.
∽ (r ∧ p) → q
означает, что если r и p, то q, где r, p и q – пропозиции.
Математика.ATIQB Теорема Пифагора гласит, что в каждом правильном треугольнике квадрат гипотенузы равен сумме квадратов ног. Математически это утверждение можно выразить следующим уравнением:
a2 + b2 = c2
где a и b – меры ног, а c – мера гипотенузы.
Добавить комментарий