Fpqc morphism: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>TakuyaMurata
cat
 
en>Anne Bauval
m Undid revision 552482251 by Anne Bauval (talk)
Line 1: Line 1:
45-degree angle from the back, the body smooth, graceful lines.<br>It was worn over a slip like sage dress and paired with a squared green clutch.Evening dresses were strapless sheaths with lime stones or stripes of green and black ribbon that gave them a modernist edge.Handbags included lime and black clutches, top handle doctor's bags and soft, roomy daytime bags in black with lime highlightsIn the event you loved this post and you would like to receive much more information relating to [http://www.bendtrapclub.com/cheap/ugg.asp Cheap Uggs Boots] i implore you to visit our own web-page. Shoes were feminine pumps with a skinny heel or lace up booties.<br>http://eastwest-tours.com/style/?p=57 <br />  http://eastwest-tours.com/style/?p=154 <br />  http://eastwest-tours.com/style/?p=206 <br />  http://eastwest-tours.com/style/?p=33 <br /> http://eastwest-tours.com/style/?p=212 <br />
{{Other uses|LOOP (disambiguation){{!}}LOOP}}
 
'''LOOP''' is a pedagogical programming language designed by [[Uwe Schöning]], along with [[GOTO (programming language)|GOTO]] and [[WHILE (programming language)|WHILE]]. The only operations supported in the language are assignment, addition and looping.
 
The key property of the LOOP language is that the functions it can compute are exactly the [[primitive recursive function]]s.<ref>{{cite book|author=Herbert Enderton|year=2012|title=Computability Theory|publisher=Academic Press}}</ref>
 
== Features ==
Each [[primitive recursive function]] is LOOP-computable and vice versa.<ref>{{Cite book | first=Uwe | last=Schöning | title=Theoretische Informatik-kurz gefasst | edition=5 | publisher=Oxford University Press | location=London | year=2008 | page=105 | ISBN=978-3-8274-1824-1 | dnb=986529222}}</ref>
 
In contrast to [[GOTO (programming language)|GOTO]] programs and [[WHILE (programming language)|WHILE]] programs, LOOP programs always [[terminating computation|terminate]].<ref>{{Cite book | first=Uwe | last=Schöning | title=Theoretische Informatik-kurz gefasst | edition=5 | publisher=Oxford University Press | location=London | year=2008 | page=93 | ISBN=978-3-8274-1824-1 | dnb=986529222}}</ref> Therefore, the set of functions computable by LOOP-programs is a proper subset of [[computable function]]s (and thus a subset of the computable by WHILE and GOTO program functions).<ref>{{Cite book | first=Uwe | last=Schöning | edition=4 | title=Theoretische Informatik-kurz gefasst | year=2001 | publisher=Oxford University Press | location=London | page=122 | ISBN=3-8274-1099-1}}</ref>
 
An example of a total computable function that is not  LOOP computable is the [[Ackermann function]].<ref>{{Cite book | first=Uwe | last=Schöning  | title=Theoretische Informatik-kurz gefasst | edition=5 | publisher=Oxford University Press | location=London | year=2008 | page=112 | ISBN=978-3-8274-1824-1 | dnb=986529222}}</ref>
 
== Formal definition ==
 
=== Syntax ===
LOOP-programs consist of the symbols <code>LOOP</code>, <code>DO</code>, <code>END</code>, <code>:=</code>, <code>+</code>, <code>-</code> and <code>;</code> as well as any number of variables and constants. LOOP-programs have the following [[syntax]] in modified [[Backus-Naur Form]]:
 
:<math>\begin{array}{lrl}
P & := & x_i := x_j + c \\
  &  | & x_i := x_j - c \\
  &  | & P;P \\
  &  | & \mathrm{LOOP} \, x_i \, \mathrm{DO} \, P \, \mathrm{END}
\end{array}
</math>
Here, <math>Var := \{ x_0, x_1, ... \}</math> are variable names and <math>c \in \mathbb{N}</math> are constants.
 
=== Semantics ===
If '''P''' is a LOOP program, '''P''' is equivalent to a function <math>f: \mathbb{N}^k \rightarrow \mathbb{N}</math>. The variables <math>x_1</math> through <math>x_k</math> in a LOOP program correspond to the arguments of the function <math>f</math>, and are initialized before program execution with the appropriate values. All other variables are given the initial value zero. The variable <math>x_0</math> corresponds to the value that <math>f</math> takes when given the argument values from <math>x_1</math> through <math>x_k</math>.
 
A statement of the form
  x<sub>0</sub> := x<sub>1</sub> + c
means the value of the constant <math>c</math> is added to the value of the variable <math>x_1</math>, and the result is set as the value of the variable <math>x_0</math>. <math>c</math> can have the value zero, which allows the value of one variable to be assigned to another variable:
x<sub>0</sub> := x<sub>1</sub> + 0
 
A statement of the form
x<sub>0</sub> := x<sub>1</sub> - c
means the value of the constant <math>c</math>is subtracted from the value of the variable <math>x_1</math>, and the result is set as the value of the variable <math>x_0</math>. Negative numbers aren't allowed, and are replaced by zeros.
 
Variables are allowed to be simultaneously on the left and right side of an assignment. A statement of the form:
 x<sub>1</sub>: = x<sub>1</sub> + c
for example, adds the value of the constant <math>c</math> to the variable <math>x_1</math>.
 
A statement of the form
''P''<sub>1</sub>; ''P''<sub>2</sub>
represents the sequential execution of sub-programs <math>P_1</math> and <math>P_2</math>, in that order.
 
A statement of the form
LOOP x DO ''P'' END
means the repeated execution of the partial program <math>P</math> a total of <math>x</math> times, where the value that <math>x</math> has at the beginning of the execution of the statement is used. Even if <math>P</math> changes the value of <math>x</math>, it won't affect how many times <math>P</math> is executed in the loop. If <math>x</math> has the value zero, then <math>P</math> is not executed inside the <code>LOOP</code> statement. This allows for [[Conditional (programming)|branches]] in LOOP programs, where the conditional execution of a partial program depends on whether a variable has value zero or one.
 
== Example Programs ==
 
=== Addition ===
In the following program, the variable <math>x_0</math> is set to the sum of the variables <math>x_1</math> and <math>x_2</math>.
x<sub>0</sub> := x<sub>1</sub> + 0;
  LOOP x<sub>2</sub> DO
    x<sub>0</sub> := x<sub>0</sub> + 1
END
#
<math>x_0</math> is first assigned the value of <math>x_1</math>. Then, <math>x_0</math> is incremented a total of <math>x_2</math> times by the <code>LOOP</code> statement. This program can be used as a subroutine in other LOOP programs. The LOOP syntax can be extended with the following statement, equivalent to calling the above as a subroutine:
  x<sub>0</sub> := x<sub>1</sub> + x<sub>2</sub>
 
=== Multiplication ===
The following LOOP program sets the value of the variable <math>x_0</math> to the product of the variables <math>x_1</math> and <math>x_2</math>.
  LOOP x<sub>1</sub> DO
  x<sub>0</sub> := x<sub>0</sub> + x<sub>2</sub>
END
#
This multiplication program uses the syntax introduced by the addition subroutine from the previous example. The multiplication is performed here by adding the value of <math>x_2</math> a total of <math>x_1</math> times, storing results in <math>x_0</math>.
 
== See also ==
* [[μ-recursive function]]
 
== Notes and references ==
<references />
 
== External links ==
* [http://web.archive.org/web/20120311032544/http://loopgotowhile.eugenkiss.com/ Loop, Goto & While]
 
[[Category:Computability theory]]

Revision as of 16:41, 28 April 2013

I'm Fernando (21) from Seltjarnarnes, Iceland.
I'm learning Norwegian literature at a local college and I'm just about to graduate.
I have a part time job in a the office.

my site; wellness [continue reading this..]

LOOP is a pedagogical programming language designed by Uwe Schöning, along with GOTO and WHILE. The only operations supported in the language are assignment, addition and looping.

The key property of the LOOP language is that the functions it can compute are exactly the primitive recursive functions.[1]

Features

Each primitive recursive function is LOOP-computable and vice versa.[2]

In contrast to GOTO programs and WHILE programs, LOOP programs always terminate.[3] Therefore, the set of functions computable by LOOP-programs is a proper subset of computable functions (and thus a subset of the computable by WHILE and GOTO program functions).[4]

An example of a total computable function that is not LOOP computable is the Ackermann function.[5]

Formal definition

Syntax

LOOP-programs consist of the symbols LOOP, DO, END, :=, +, - and ; as well as any number of variables and constants. LOOP-programs have the following syntax in modified Backus-Naur Form:

Here, are variable names and are constants.

Semantics

If P is a LOOP program, P is equivalent to a function . The variables through in a LOOP program correspond to the arguments of the function , and are initialized before program execution with the appropriate values. All other variables are given the initial value zero. The variable corresponds to the value that takes when given the argument values from through .

A statement of the form

x0 := x1 + c

means the value of the constant is added to the value of the variable , and the result is set as the value of the variable . can have the value zero, which allows the value of one variable to be assigned to another variable:

x0 := x1 + 0

A statement of the form

x0 := x1 - c

means the value of the constant is subtracted from the value of the variable , and the result is set as the value of the variable . Negative numbers aren't allowed, and are replaced by zeros.

Variables are allowed to be simultaneously on the left and right side of an assignment. A statement of the form:  x1: = x1 + c for example, adds the value of the constant to the variable .

A statement of the form

P1; P2

represents the sequential execution of sub-programs and , in that order.

A statement of the form

LOOP x DO P END

means the repeated execution of the partial program a total of times, where the value that has at the beginning of the execution of the statement is used. Even if changes the value of , it won't affect how many times is executed in the loop. If has the value zero, then is not executed inside the LOOP statement. This allows for branches in LOOP programs, where the conditional execution of a partial program depends on whether a variable has value zero or one.

Example Programs

Addition

In the following program, the variable is set to the sum of the variables and .

x0 := x1 + 0;
LOOP x2 DO
   x0 := x0 + 1
END

is first assigned the value of . Then, is incremented a total of times by the LOOP statement. This program can be used as a subroutine in other LOOP programs. The LOOP syntax can be extended with the following statement, equivalent to calling the above as a subroutine:

x0 := x1 + x2

Multiplication

The following LOOP program sets the value of the variable to the product of the variables and .

LOOP x1 DO
  x0 := x0 + x2
END

This multiplication program uses the syntax introduced by the addition subroutine from the previous example. The multiplication is performed here by adding the value of a total of times, storing results in .

See also

Notes and references

  1. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  2. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  3. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  4. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534
  5. 20 year-old Real Estate Agent Rusty from Saint-Paul, has hobbies and interests which includes monopoly, property developers in singapore and poker. Will soon undertake a contiki trip that may include going to the Lower Valley of the Omo.

    My blog: http://www.primaboinca.com/view_profile.php?userid=5889534

External links