Jump to content

Алфавит (формальные языки)

(Перенаправлено из символа ввода )

В теории формального языка алфавит , представляет собой , иногда называемый словарем непустой набор неделимых символов /знаков/ глифов . [ 1 ] обычно считается, что он представляет буквы, символы, цифры, фонемы или даже слова. [ 2 ] [ 3 ] Алфавиты в этом техническом смысле набора используются в самых разных областях, включая логику, математику, информатику и лингвистику. Алфавит может иметь любую мощность («размер») и, в зависимости от его назначения, быть конечным (например, алфавит букв от «а» до «я»), счетным (например, ), или даже несчетное (например, ).

Строки , также известные как «слова» или «предложения», в алфавите определяются как последовательность символов из набора алфавита. [ 4 ] Например, алфавит строчных букв от «а» до «z» может использоваться для образования английских слов, таких как «айсберг», в то время как алфавит как прописных, так и строчных букв также может использоваться для образования имен собственных, таких как «Arc.Ask3.Ru». Распространенным алфавитом является {0,1}, двоичный алфавит , а «00101111» — пример двоичной строки . бесконечные последовательности Также можно рассматривать символов (см. язык Omega ).

В практических целях часто бывает необходимо ограничить количество символов в алфавите, чтобы они были однозначными при интерпретации. Например, если двухчленный алфавит — {00,0}, строка, записанная на бумаге как «000», является неоднозначной, поскольку неясно, является ли она последовательностью из трех символов «0», «00», за которыми следует «0» или «0», за которым следует «00».

Обозначения

[ редактировать ]

Если L — формальный язык, то есть (возможно, бесконечный) набор строк конечной длины, алфавит L это набор всех символов, которые могут встречаться в любой строке L. в Например, если L — это набор всех идентификаторов переменных в языке программирования C , L алфавит — это набор { a, b, c, ..., x, y, z, A, B, C, .... ., X, Y, Z, 0, 1, 2, ..., 7, 8, 9, _ }.

Учитывая алфавит , набор всех строк длины над алфавитом обозначается . Набор всех конечных строк (независимо от их длины) обозначается звездным оператором Клини как , и также называется замыканием Клини . Обозначения указывает набор всех бесконечных последовательностей в алфавите , и указывает на набор всех конечных или бесконечных последовательностей.

Например, при использовании двоичного алфавита {0,1} строки ε, 0, 1, 00, 01, 10, 11, 000 и т. д. находятся в замыкании Клини алфавита (где ε представляет собой пустую строку ). .

Приложения

[ редактировать ]

Алфавиты играют важную роль в использовании формальных языков , автоматов и полуавтоматов . В большинстве случаев для определения экземпляров автоматов, таких как детерминированные конечные автоматы (DFA), требуется указать алфавит, из которого строятся входные строки для автомата. В этих приложениях обычно требуется, чтобы алфавит был конечным множеством , но не ограничивается иным образом.

При использовании автоматов, регулярных выражений или формальных грамматик как части алгоритмов обработки строк алфавитом можно считать набор символов текста, обрабатываемого этими алгоритмами, или подмножество допустимых символов из набора символов.

См. также

[ редактировать ]
  1. ^ Флетчер, Питер; Хойл, Хьюз; Пэтти, К. Уэйн (1991). Основы дискретной математики . PWS-Кент. п. 114. ИСБН  0-53492-373-9 . Алфавит — это непустое конечное множество , члены которого называются символами или знаками .
  2. ^ Эббингауз, Х.-Д. ; Флум, Дж.; Томас, В. (1994). Математическая логика (2-е изд.). Нью-Йорк : Спрингер . п. 11. ISBN  0-387-94258-0 . По алфавиту мы имеем в виду непустой набор символов .
  3. ^ Розен, Кеннет Х. «Дискретная математика и ее приложения, седьмое издание» McGraw-Hill 2012. Страницы 847-851. Со страницы 849: «Словарь (или алфавит) V — это конечный непустой набор элементов, называемых символами. Слово (или предложение) над V — это строка конечной длины элементов V».
  4. ^ Раутенберг, Вольфганг (2010). Краткое введение в математическую логику (PDF) (Третье изд.). Спрингер. п. хх. ISBN  978-1-4419-1220-6 . Если 𝗔 — алфавит , т. е. если элементы 𝐬 ∈ 𝗔 являются символами или хотя бы именованными символами, то последовательность (𝐬 1 ,...,𝐬 n )ε𝗔 н записывается как 𝐬 1 ···𝐬 n и называется строкой или словом над 𝗔.

Литература

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: e4ab30a536cbadf4967ebc8e0d610f39__1715543400
URL1:https://arc.ask3.ru/arc/aa/e4/39/e4ab30a536cbadf4967ebc8e0d610f39.html
Заголовок, (Title) документа по адресу, URL1:
Alphabet (formal languages) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)