Jump to content

User:Jochen Burghardt/sandbox

From Wikipedia, the free encyclopedia

Unambiguity

[edit]

In most use cases of an alphabet it is required that strings built from it can be decomposed into their constituent symbols unambiguously, formally: . This is required e.g. in order to define the length of a string, which is a basic notion thoughout formal language theory: many theorems are proved by induction over the length of some involved strings.

However, the requirement is often assumed just tacitly, like in Hopcroft & Ullman (1969, sect.1.1, p.1) and in Hopcroft, Motwani & Ullman (2003, sect.1.5, p.28-30). In another edition, Hopcroft & Ullman (1979, ch.1, p.1-2) wrote A 'symbol' is an abstract entity that we shall not define formally, just as 'point' and 'line' are not defined in geometry, which might be read as intended to express unambiguity of strings. Perrin (1990, sect.2, p.4) mentions an alphabet consisting of "words over another alphabet as in the case of characters encoded by a fixed-length binary string" but does not discuss ambiguity issues (of variable-length encodings). Hermes (1973, sect.II.1.2, 'Requirements to symbols') mentioned the requirement informally: Each symbol string can be decomposed uniquely and effectively into the symbols it is composed from.[a] He gives the counter-example of the alphabet and the string which can be obtained in three different ways as composition of symbols.[b] Moreover, effectively requires that the decomposition function be computable.

A sufficient condition for unambiguity is that the operations used to build the Kleene star are fresh, that is, they were not used, directly or indirectly, in the construction of the alphabet itself.[citation needed] This concerns both monoid operations, i.e. the empty string as well as concatenation. If , then each string can be obtained as composition of an arbitrary sufficiently large number of symbols, thus again preventing a reasonable definition of length. In Hermes' above example, the second symbol used the same concatenation as the Kleene star does.

A necessary condition for unambiguity can be checked using the Sardinas–Patterson algorithm from coding theory.

Definition of being the free monoid over . Left: category of monoids, right: category of sets.

[dubious:] By construction in category theory, the free monoid always uses fresh operators for empty string and concatenation. Using the definition from Free object#Definition (cf. picture), the monoid with fresh operators is a valid candidate for , so the free monoid cannot identify more expressions than that does. See also section #Free monoid vs. Kleene star below. On the other hand, the Kleene star has to be an idempotent operation to satisfy the laws of a Kleene algebra. Hence, both notions disagree in case of an "ambiguous alphabet[clarify]".

Free monoid vs. Kleene star

[edit]

Slightly extending Hermes' example, it is well-known that is isomorphic to the free monoid over a singleton set like .[c] The free monoid over its carrier set , in turn, is , where denotes the set of tuples of natural numbers, denotes the unique 0-tuple, and denotes tuple concatenation. Omitting inclusion functions and forgetful functors, e.g. is a member of . The monoids and are not isomorphic, since happens to be commutative, while tuple concatenation is not.

Unlike repeated free-monoid construction, the Kleene star expressions and both evaluate to the same set, viz. .

References

[edit]
  • Hermes, Hans (1972). Einführung in die mathematische Logik. Mathematische Leitfäden (in German) (4th ed.). Stuttgart: B.G. Teubner. ISBN 3-519-12201-4.
  • Hermes, Hans (1973). Introduction to Mathematical Logic. Hochschultext (Springer-Verlag). London: Springer. ISBN 3540058192. ISSN 1431-4657.
  • Hopcroft, John E.; Ullman, Jeffrey D. (1979). Introduction to Automata Theory, Languages, and Computation. Reading/MA: Addison-Wesley. ISBN 0-201-02988-X.
  • Perrin, Dominique (1990). "Finite Automata". In Leeuwen, Jan van (ed.). Formal Models and Semantics. Handbook of Theoretical Computer Science. Vol. B. Elsevier. pp. 1–58. ISBN 0-444-88074-7.

  1. ^ Ad-hoc translation from the German original Hermes (1972, sect.II.1.2, p.51, 'Voraussetzungen über die Symbole', item d); please replace by literal quote from English edition and remove this footnote.
  2. ^ viz., , , and , leading to length 2, 2, and 3, respectively
  3. ^ e.g. Free_monoid#Natural_numbers



[outdated:]

Hermes example backup 1

[edit]

For example, let be the free monoid over .

Then Hermes' is a subset of the carrier set of .

Let be the free monoid over the set , using different monoid operations and .

Define the mapping by and .

Then every mapping can be extended to a monoid homomorphism defined as

  • ,
  • ,
  • , and
  • for all .

Hermes example backup 2

[edit]

For example, is the free monoid over , with : for each monoid and each mapping , define by

  • ,
  • , and
  • .

Then is well-defined, a monoid homomorphism. and its carrier satisfies the commutative triangle.

Then Hermes' example reads .

Let be the free monoid over the set , using different monoid operations and .

Define the mapping by and .

Then every mapping can be extended to a monoid homomorphism defined as

  • ,
  • ,
  • , and
  • for all .

Hermes example backup 3

[edit]

For example, it is well-known that is (isomorphic to) the free monoid over a singleton set , while is the free monoid over , where denotes the set of tuples of natural numbers, denotes the unique 0-tuple, and denotes tuple concatenation. The monoids and are not isomorphic, since their carrier sets and are of different cardinalities. In contrast, the Kleene star expressions and both evaluate to .

MODULE main
VAR
  semaphore : boolean;
  proc1 : process user(semaphore);
  proc2 : process user(semaphore);
ASSIGN
  init(semaphore) := FALSE;
SPEC
  AG (proc1.state = entering -> AF proc1.state = critical)

MODULE user(semaphore)
VAR
  state : {idle,entering,critical,exiting};
ASSIGN
  init(state) := idle;
  next(state) :=  
    case 
      state = idle : {idle,entering};
      state = entering & !semaphore : critical;
      state = critical : {critical,exiting};
      state = exiting : idle;
      TRUE : state;
    esac;
  next(semaphore) :=  
    case
      state = entering : TRUE;
      state = exiting : FALSE;
      TRUE : semaphore;
    esac;
FAIRNESS
  running

Distributive elements

[edit]

In a (distributive or non-distributive) lattice, an element x is called a distributive element if ∀y,z: x ∨ (yz) = (xy) ∧ (xz). An element x is called a dual distributive element if ∀y,z: x ∧ (yz) = (xy) ∨ (xz). In a distributive lattice, every element is both distributive and dual distributive. In a non-distributive lattice, there may be elements that are distributive, but not dual distributive, and vice versa. For example, in the depicted pentagon lattice N5,

In classical logic, a statement[note 1] implies the statement under all circumstances. For example, the statement

"If a cake contains sugar then it tastes good", formally

,

implies under a monotone consequence relation the statement

"If a cake contains sugar and soap then it tastes good",

.

Clearly this doesn't match our own understanding of cakes. Non-monotonic logic, in particular the rational consequence relation, is designed to avoid this undesired inference. By asserting

"If a cake contains sugar then it usually tastes good",

,

a rational consequence relation allows for a more realistic model of the real world, and it does not automatically follow that

"If a cake contains sugar and soap then it usually tastes good",

.

However, in some cases, we do want to conclude from . Rules CMO and RMO serve that purpose; we give an example how each of them can be applied. If we also have the information

"If a cake contains sugar then it usually contains butter",

,

then we may legally conclude, under CMO, that

"If a cake contains sugar and butter then it usually tastes good",

.

Using rule RMO,

"If a cake contains sugar then usually it contains no soap",

then we could legally conclude from RMO that

"If the cake contains sugar and soap then it usually tastes good",

.

If this latter conclusion seems ridiculous to you then it is likely that you are subconsciously asserting your own preconceived knowledge about cakes when evaluating the validity of the statement. That is, from your experience you know that cakes that contain soap are likely to taste bad so you add to the system your own knowledge such as "Cakes that contain sugar do not usually contain soap.", even though this knowledge is absent from it. If the conclusion seems silly to you then you might consider replacing the word soap with the word eggs to see if it changes your feelings.

Excerpt from the Curie family tree

Properties of, and operations on, mathematical relations can be explained along family relationships.

The relation "is a child of" is

  • irreflexive (nobody is a child of her/himself),
  • asymmetric (if x is a child of y, then y cannot be a child of x),
  • right-total (everybody is the child of someone),
  • but not left-total (not everybody has a child).

The relation "is a decendant of" is

  • antisymmetric (if x is a decendant of y, then y cannot be a decendant of x),
  • transitive (if x is a descentant of y, and y is a descendant of z, then x is also a descendant of z),
  • right-total (everybody is descendant of someone).

Different conventions may be adopted as to whether it is reflexive ("everybody is considered a descendant of her/himself"), irreflexive ("nobody is considered a descendant of her/himself"), or possibly even none of both ("some people are considered a descendant of her/himself, while others are not").

The relation "is a parent of" is the converse of "is a child of": x is a parent of y if, and only if, y is a child of x. Therefore, "is a parent of" is

  • irreflexive (nobody is a parent of her/himelf, since -see above- nobody is a child of her/himself),
  • asymmetric (if x is a parent of y, then y is a child of x, hence -see above- x cannot be a child of y, that is, y cannot be a parent of x),
  • left-total (everybody has a parent, since -see above- everybody is the child of someone),
  • but not right-total (not everybody is the parent of somebody, since -see above- not everybody has a child).

The relation "is a child of" is the union of "is a daughter of" and "is a son of":[note 2] x is a child of y if, and only if, x is a daughter of y, or x is a son of y.

The relation "is an aunt of" is the composition of "is a parent of" ∘ "is a sister of": x is an aunt of z if, and only if, x is a sister of some y such that y is a parent of z. For example, Bronisława Dłuska is an aunt of Ève Curie, since Bronisława Dłuska is a sister of Marie Curie, which, in turn, is a parent of Ève Curie, cf. picture.

Composing in reverse order yields a different relation R:[note 3] we have x R z if, and only if, x is a parent of some y such that y is a sister of z. While R is contained in the relation "is a parent of", both relations do not coincide: for example, Anne Joliot [fr] is a parent of Marc Joliot, but (Anne Joliot)R(Marc Joliot) does not hold as long as Marc Joliot does not have a sister.

TO DO: illustrate Intersection, Complement, Restriction
TO DO: illustrate all Combinations of properties
TO DO: illustrate properties Connected

Recent

[edit]

In particular, a definition an intended function f may establish a relation that is not right-unique or not serial, and hence in fact not a function. In that case, f is called ill defined; if it is not right-serial, f is also called ambiguous.

commons:User:Jochen Burghardt

q
p
1 2 3 4 5 6
1 Yes Yes Yes Yes Yes Yes
2 Yes Yes Yes
3 Yes Yes
4 Yes
5 Yes
6 Yes
Relation :
Value p divides value q
q
p
1 2 3 4 5 6
1 Yes Yes Yes Yes
2 Yes Yes Yes Yes
3 Yes Yes Yes Yes
4 Yes Yes Yes Yes
5 Yes Yes Yes Yes
6 Yes Yes Yes Yes
Relation :
Face p adjacent to face q
Example die

In mathematics, a relation on a set associates certain elements of with each other. Formally, a relation on is a set of ordered pairs of elements of that is, a subset of the Cartesian product . An element of is related to an element if the pair is an element of .

For example, "is adjacent to" is a relation on the set of faces of the depicted example die; it associates e.g. 5,6, and likewise 6,3, but neither 3,4, nor 1,6. The left table shows for each cell whether its row's face is adjacent to its column's face. The example adjacency relation is represented as the set

this set has one element for each "" entry in the left table.

Another relation example on the same set is "divides"; it associates e.g. 3,6, but not 6,3. The right table illustrates this relation. Its is represented as the set

again, this set has one element for each "" entry in the right table.

Equation

[edit]
Well, Variety_(universal_algebra) link to identity (mathematics), which gives a fairly usable definition in its first sentence, viz. "An identity is an equality relating one mathematical expression A to another mathematical expression B, such that A and B (which might contain some variables) produce the same value for all values of the variables within a certain range of validity". I'd formalize this as: "An identity of a formula of the form ∀x1,...,xn. s = t, where s and t are terms with no other free variables than x1,...,xn". An example identity set is { ∀x,y,z.x*(y*z)=(x*y)*z , ∀x. x*1=x } for the theory of monoids. The quantifier prefix is often omitted, like { x*(y*z)=(x*y)*z , x*1=x } in the example.
In English Wikipedia, at least the articles "identity (mathematics)", "equality (mathematics)", and "equation" deal with this issue; they mainly differ by the purpose a formula is used for. "Identity" and "equality" (I believe there is no difference between these concepts) take the formula as an assertion from which other formulas may be inferred, while "equation" takes the "s=t" part as something to be solved (like x2-2x+1=0); more formally, a constructive proof is sought for ∃x1,...,xn. s = t. However, none of the 3 articles mentions quantification at all.

Table in footnote ref

[edit]

Main subsection

[edit]

Main[1] text[2] blah blah.[3]

References subsection

[edit]
  1. ^ Previous footnote
  2. ^ Footnote with table: start here

    end here.

  3. ^ Next footnote

Next subsection

[edit]

Text in next subsection.

Set constraint

[edit]

Different approaches admit different operators on sets, cf. table.

Bachmair, Ganzinger, Waldmann (1992) {} U X E1E2 E1E2 U \ E1 f(E1,...,En) E1E2 E1 = E2
Regular tree grammars X E1E2 f(E1,...,En) E1 = E2

U: Universe, X: Variable, Ei: sub-expression

Markup / template examples

[edit]

blue on red

  • Reference within reference: linear indexed grammars,[5] By requiring[3] ... [5]

Notes

[edit]
  1. ^ We use here to denote the classical consequence relation (informally: "If ... then always ..."). In constrast, we use to denote the rational consequence relation (informally: "If ... then usually ...").
  2. ^ In a non-binary setting, "is a child of" is the union of more than two relations, one for each gender.
  3. ^ Similar to child relations for non-binary genders, there is no traditional relation name available, so we use just R.
  4. ^ Outer reference (template): record [1] Date of his birth.[2] End of outer reference

References

[edit]
  1. ^ Inner reference (markup): "Thornstein". The Telegraph. 17 February 2012. Retrieved 11 April 2012. End of inner reference
  2. ^ Robinson, p. xxiv.
  3. ^ a b staudacher1993
  4. ^ Weir (1988). "Grammars". Proc. pp. 278–285.
  5. ^ a b According to Staudacher (1993, p.361 left, Sect.2.2),[3] the name.[4]