Langage formelUn langage formel, en mathématiques, en informatique et en linguistique, est un ensemble de mots. L'alphabet d'un langage formel est l'ensemble des symboles, lettres ou lexèmes qui servent à construire les mots du langage ; souvent, on suppose que cet alphabet est fini. La théorie des langages formels a pour objectif de décrire les langages formels. Les mots sont des suites d'éléments de cet alphabet ; les mots qui appartiennent à un langage formel particulier sont parfois appelés mots bien formés ou formules bien formées.
Alphabetthumb|Lettres de l'alphabet phénicien. Un alphabet (de alpha et bêta, les deux premières lettres de l’alphabet grec) est un système d'écriture constitué d'un ensemble de symboles dont chacun représente, par exemple, un des phonèmes d’une langue. Chacun des symboles d'un alphabet ou graphèmes, est appelé « lettre ». Dans les cas les plus simples, chaque lettre correspond à un phonème de la langue et inversement.
Étoile de KleeneL'étoile de Kleene, parfois appelée fermeture de Kleene ou encore fermeture itérative, est, en théorie des langages, un opérateur unaire utilisé pour décrire les langages formels. Le nom étoile vient de la notation employée, un astérisque, et Kleene de Stephen Cole Kleene qui l'a introduite. L'étoile de Kleene est l'un des trois opérateurs de base utilisés pour définir une expression rationnelle, avec la concaténation et l'union ensembliste.
Latin alphabetThe Latin alphabet, also known as the Roman alphabet, is the collection of letters originally used by the ancient Romans to write the Latin language. Largely unaltered with the exception of extensions (such as diacritics), it forms the Latin script that is used to write many modern European languages, including English. With modifications, it is also used for other alphabets, such as the Vietnamese alphabet. Its modern repertoire is standardised as the ISO basic Latin alphabet.
ConcaténationLe terme concaténation (substantif féminin), du latin cum (« avec ») et catena (« chaîne, liaison »), désigne l'action de mettre bout à bout au moins deux chaînes de caractères ou de péricopes. Formellement, dans le contexte théorique des langages formels : on se donne un ensemble fini Σ, et on appelle l'ensemble des séquences d'éléments de Σ ; la concaténation est alors la loi de composition interne sur qui aux séquences et , où m et n sont des entiers naturels, associe la séquence .
Alphabet phénicienL'alphabet phénicien (appelé par convention alphabet protocananéen pour les inscriptions antérieures à 1200 av. J.-C.) est un ancien abjad, un alphabet consonantique non pictographique. Il était utilisé pour l'écriture des langues cananéennes et en particulier du phénicien, langue sémitique utilisée par la civilisation phénicienne. Il s'agit d'un abjad, car il ne note que les sons consonantiques (une mater lectionis a été utilisée pour certaines voyelles dans des variétés tardives).
Montenegrin alphabetThe Montenegrin alphabet is the collective name given to "Abeceda" (Montenegrin Latin alphabet) and "Азбука" (Montenegrin Cyrillic alphabet), the writing systems used to write the Montenegrin language. It was adopted on 9 June 2009 by the Montenegrin Minister of Education, Sreten Škuletić and replaced the Serbian Cyrillic and Gaj's Latin alphabets in use at the time.
Ensemblevignette|Ensemble de polygones dans un diagramme d'Euler En mathématiques, un ensemble désigne intuitivement un rassemblement d’objets distincts (les éléments de l'ensemble), « une multitude qui peut être comprise comme une totalité » pour paraphraser Georg Cantor qui est à l'origine de la théorie des ensembles. Dans une approche axiomatique, la théorie des ensembles est une théorie de l'appartenance (un élément d'un ensemble est dit « appartenir » à cet ensemble).
DéfinitionUne définition est une proposition qui met en équivalence un élément définissant et un élément étant défini. Une définition a pour but de clarifier, d'expliquer. Elle détermine les limites ou « un ensemble de traits qui circonscrivent un objet ». Selon les Définitions du pseudo-Platon, la définition est la . Aristote, dans le Topiques, définit le mot comme En mathématiques, on définit une notion à partir de notions antérieurement définies. Les notions de bases étant les symboles non logiques du langage considéré, dont l'usage est défini par les axiomes de la théorie.
Histoire de l'alphabet grecL’alphabet grec est, historiquement, à l'origine des alphabets modernes servant à écrire les langues européennes. Ce n’est pas une création ex nihilo, car il est dérivé des alphabets utilisés sur la côte de Phénicie, l’alphabet phénicien. Celui-ci est à proprement parler un abjad, un alphabet consonantique. Cependant, vers le , des matres lectionis y apparurent pour indiquer certaines voyelles, surtout des voyelles finales.
Langage rationnelEn théorie des langages, les langages rationnels ou langages réguliers ou encore langages reconnaissables peuvent être décrits de plusieurs façons équivalentes : ce sont les langages décrits par les expressions régulières ou rationnelles, d'où le nom de langages réguliers ; ce sont les langages obtenus, à partir des lettres et de l'ensemble vide, par les opérations rationnelles, à savoir l'union, le produit et l'étoile de Kleene, d'où le nom de langages rationnels ; ce sont les langages reconnus par des auto
Lexical definitionThe lexical definition of a term, also known as the dictionary definition, is the definition closely matching the meaning of the term in common usage. As its other name implies, this is the sort of definition one is likely to find in the dictionary. A lexical definition is usually the type expected from a request for definition, and it is generally expected that such a definition will be stated as simply as possible in order to convey information to the widest audience.
String operationsIn computer science, in the area of formal language theory, frequent use is made of a variety of string functions; however, the notation used is different from that used for computer programming, and some commonly used functions in the theoretical realm are rarely used when programming. This article defines some of these basic terms. A string is a finite sequence of characters. The empty string is denoted by . The concatenation of two string and is denoted by , or shorter by . Concatenating with the empty string makes no difference: .
Algèbre de KleeneEn mathématiques, une algèbre de Kleene (du nom du logicien américain Stephen Cole Kleene) correspond à l'un des deux concepts suivants : Un treillis ordonné et distributif avec une involution satisfaisant les lois de De Morgan et l'inégalité x ∧ −x ≤ y ∨ −y. Ce qui fait que chaque algèbre booléenne est une algèbre de Kleene, la réciproque étant complément. À l'instar des algèbres de Boole qui sont basées sur les propositions logiques classiques, les algèbres de Kleene sont basées sur la logique ternaire de Kleene.
String literalA string literal or anonymous string is a literal for a string value in the source code of a computer program. Modern programming languages commonly use a quoted sequence of characters, formally "bracketed delimiters", as in x = "foo", where "foo" is a string literal with value foo. Methods such as escape sequences can be used to avoid the problem of delimiter collision (issues with brackets) and allow the delimiters to be embedded in a string. There are many alternate notations for specifying string literals especially in complicated cases.
Grammaire formelleUne grammaire formelle est un formalisme permettant de définir une syntaxe et donc un langage formel, c'est-à-dire un ensemble de mots admissibles sur un alphabet donné. La notion de grammaire formelle est particulièrement utilisée en programmation logique, compilation (analyse syntaxique), en théorie de la calculabilité et dans le traitement des langues naturelles (tout particulièrement en ce qui concerne leur morphologie et leur syntaxe).
Sémantique formelleEn linguistique, la sémantique formelle cherche à comprendre le sens (linguistique) en construisant des modèles mathématiques précis des principes utilisés par le locuteur pour définir la relation entre des expressions en langage naturel et l’environnement supportant un discours faisant sens. Les outils mathématiques utilisés sont une combinaison de logique mathématique et de langage formel théorique, plus particulièrement de lambda-calcul typé.
Equivalence (formal languages)In formal language theory, weak equivalence of two grammars means they generate the same set of strings, i.e. that the formal language they generate is the same. In compiler theory the notion is distinguished from strong (or structural) equivalence, which additionally means that the two parse trees are reasonably similar in that the same semantic interpretation can be assigned to both. Vijay-Shanker and Weir (1994) demonstrates that Linear Indexed Grammars, Combinatory Categorial Grammars, Tree-adjoining Grammars, and Head Grammars are weakly equivalent formalisms, in that they all define the same string languages.
LangageLe langage est la capacité d'exprimer une pensée et de communiquer au moyen d'un système de signes (vocaux, gestuel, graphiques, tactiles, olfactifs, etc.) doté d'une sémantique, et le plus souvent d'une syntaxe — mais ce n'est pas systématique (la cartographie est un exemple de langage non syntaxique). Fruit d'une acquisition, la langue est une des nombreuses manifestations du langage. Les langages sont constitués de signaux correspondant au support physique de l'information.
Méthode formelle (informatique)En informatique, les méthodes formelles sont des techniques permettant de raisonner rigoureusement, à l'aide de logique mathématique, sur un programme informatique ou du matériel électronique numérique, afin de démontrer leur validité par rapport à une certaine spécification. Elles reposent sur les sémantiques des programmes, c'est-à-dire sur des descriptions mathématiques formelles du sens d'un programme donné par son code source (ou, parfois, son code objet).