cfl_regular.cpp File Reference

Operations on regular languages. More...

#include "cfl_regular.h"
#include "cfl_determin.h"

Go to the source code of this file.

Namespaces

 faudes
 libFAUDES resides within the namespace faudes.
 

Functions

void faudes::LanguageUnionNonDet (const Generator &rGen1, const Generator &rGen2, Generator &rResGen)
 Language union, nondeterministic version. More...
 
void faudes::LanguageUnion (const Generator &rGen1, const Generator &rGen2, Generator &rResGen)
 Language union, deterministic version. More...
 
void faudes::LanguageUnion (const GeneratorVector &rGenVec, Generator &rResGen)
 Language union. More...
 
void faudes::LanguageIntersection (const Generator &rGen1, const Generator &rGen2, Generator &rResGen)
 Language intersection. More...
 
void faudes::LanguageIntersection (const GeneratorVector &rGenVec, Generator &rResGen)
 Language intersection. More...
 
bool faudes::EmptyLanguageIntersection (const Generator &rGen1, const Generator &rGen2)
 Test for empty language intersection (same as Disjoind()). More...
 
bool faudes::LanguageDisjoint (const Generator &rGen1, const Generator &rGen2)
 Test whether two languages are disjoint. More...
 
void faudes::Automaton (Generator &rGen, const EventSet &rAlphabet)
 Convert generator to automaton wrt specified alphabet. More...
 
void faudes::Automaton (Generator &rGen)
 Convert generator to automaton. More...
 
void faudes::LanguageComplement (Generator &rGen, const EventSet &rAlphabet)
 Language complement wrt specified alphabet. More...
 
void faudes::LanguageComplement (Generator &rGen)
 Language complement. More...
 
void faudes::LanguageComplement (const Generator &rGen, Generator &rRes)
 Language Complement (uniform API wrapper). More...
 
void faudes::LanguageComplement (const Generator &rGen, const EventSet &rSigma, Generator &rRes)
 Language Complement (uniform API wrapper). More...
 
void faudes::LanguageDifference (const Generator &rGen1, const Generator &rGen2, Generator &rResGen)
 Language difference (set-theoretic difference). More...
 
void faudes::LanguageConcatenateNonDet (const Generator &rGen1, const Generator &rGen2, Generator &rResGen)
 Language concatenation, nondeterministic version. More...
 
void faudes::LanguageConcatenate (const Generator &rGen1, const Generator &rGen2, Generator &rResGen)
 Language concatenation, deterministic version. More...
 
void faudes::FullLanguage (const EventSet &rAlphabet, Generator &rResGen)
 Full Language, L(G)=Lm(G)=Sigma*. More...
 
void faudes::AlphabetLanguage (const EventSet &rAlphabet, Generator &rResGen)
 Alphabet Language, L(G)=Lm(G)=Sigma. More...
 
void faudes::EmptyStringLanguage (const EventSet &rAlphabet, Generator &rResGen)
 Empty string language, L(G)=Lm(G)={epsilon}. More...
 
void faudes::EmptyLanguage (const EventSet &rAlphabet, Generator &rResGen)
 Empty language Lm(G)={}. More...
 
bool faudes::IsEmptyLanguage (const Generator &rGen)
 Test for Empty language Lm(G)=={}. More...
 
bool faudes::LanguageInclusion (const Generator &rGen1, const Generator &rGen2)
 Test language inclusion, Lm1<=Lm2. More...
 
bool faudes::LanguageEquality (const Generator &rGen1, const Generator &rGen2)
 Language equality, Lm1==Lm2. More...
 
void faudes::KleeneClosure (Generator &rGen)
 Kleene Closure. More...
 
void faudes::KleeneClosure (const Generator &rGen, Generator &rResGen)
 Kleene Closure. More...
 
void faudes::KleeneClosureNonDet (Generator &rGen)
 Kleene Closure, nondeterministic version. More...
 
void faudes::PrefixClosure (Generator &rGen)
 Prefix Closure. More...
 
bool faudes::IsPrefixClosed (const Generator &rGen)
 Test for prefix closed marked language. More...
 
bool faudes::IsNonblocking (const Generator &rGen)
 Test for nonblocking generator. More...
 
bool faudes::IsNonblocking (const Generator &rGen1, const Generator &rGen2)
 Test for nonblocking marked languages. More...
 
void faudes::SelfLoop (Generator &rGen, const EventSet &rAlphabet)
 Self-loop all states. More...
 
void faudes::SelfLoopMarkedStates (Generator &rGen, const EventSet &rAlphabet)
 Self-loop all marked states. More...
 
void faudes::SelfLoop (Generator &rGen, const EventSet &rAlphabet, const StateSet &rStates)
 Self-loop specified states. More...
 

Detailed Description

Operations on regular languages.

See [Cassandras and Lafortune. Introduction to Discrete Event Systems] for an introduction to regular language operations. Operations are always performed on language(s) marked by the passed generator(s), resulting in the language(s) marked by the resulting generator(s). Only if mentioned extra, the same is done for the involved generated (prefix-closed) languages.

Definition in file cfl_regular.cpp.

libFAUDES 2.32b --- 2024.03.01 --- c++ api documentaion by doxygen