Misplaced Pages

FLOW-MATIC

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

FLOW-MATIC , originally known as B-0 ( Business Language version 0 ), was the first English-like data processing language. It was developed for the UNIVAC I at Remington Rand under Grace Hopper from 1955 to 1959, and helped shape the development of COBOL .

#664335

48-542: Hopper had found that business data processing customers were uncomfortable with mathematical notation: I used to be a mathematics professor. At that time I found there were a certain number of students who could not learn mathematics. I then was charged with the job of making it easy for businessmen to use our computers. I found it was not a question of whether they could learn mathematics or not, but whether they would. […] They said, 'Throw those symbols out—I do not know what they mean, I have not time to learn symbols.' I suggest

96-541: A i = e − u ∑ j = 0 ∞ u j j ! a i + j . {\displaystyle \sum _{n=0}^{\infty }{\frac {u^{n}}{n!}}\Delta ^{n}a_{i}=e^{-u}\sum _{j=0}^{\infty }{\frac {u^{j}}{j!}}a_{i+j}.} So in particular, f ( a + t ) = lim h → 0 + e − t / h ∑ j = 0 ∞ f (

144-434: A n ( x − b ) n . {\displaystyle f(x)=\sum _{n=0}^{\infty }a_{n}(x-b)^{n}.} Differentiating by x the above formula n times, then setting x = b gives: f ( n ) ( b ) n ! = a n {\displaystyle {\frac {f^{(n)}(b)}{n!}}=a_{n}} and so the power series expansion agrees with

192-588: A ) 2 ! ( x − a ) 2 + f ‴ ( a ) 3 ! ( x − a ) 3 + ⋯ = ∑ n = 0 ∞ f ( n ) ( a ) n ! ( x − a ) n . {\displaystyle f(a)+{\frac {f'(a)}{1!}}(x-a)+{\frac {f''(a)}{2!}}(x-a)^{2}+{\frac {f'''(a)}{3!}}(x-a)^{3}+\cdots =\sum _{n=0}^{\infty }{\frac {f^{(n)}(a)}{n!}}(x-a)^{n}.} Here, n ! denotes

240-461: A ) h n = f ( a + t ) . {\displaystyle \lim _{h\to 0^{+}}\sum _{n=0}^{\infty }{\frac {t^{n}}{n!}}{\frac {\Delta _{h}^{n}f(a)}{h^{n}}}=f(a+t).} Here Δ h is the n th finite difference operator with step size h . The series is precisely the Taylor series, except that divided differences appear in place of differentiation: the series

288-454: A = 1 is ( x − 1 ) − 1 2 ( x − 1 ) 2 + 1 3 ( x − 1 ) 3 − 1 4 ( x − 1 ) 4 + ⋯ , {\displaystyle (x-1)-{\tfrac {1}{2}}(x-1)^{2}+{\tfrac {1}{3}}(x-1)^{3}-{\tfrac {1}{4}}(x-1)^{4}+\cdots ,} and more generally,

336-552: A function is an infinite sum of terms that are expressed in terms of the function's derivatives at a single point. For most common functions, the function and the sum of its Taylor series are equal near this point. Taylor series are named after Brook Taylor , who introduced them in 1715. A Taylor series is also called a Maclaurin series when 0 is the point where the derivatives are considered, after Colin Maclaurin , who made extensive use of this special case of Taylor series in

384-468: A chance to see Laning and Zierler's work: [W]e were already considering algebraic input considerably more sophisticated than that of Laning and Zierler's system when we first heard of their pioneering work ... [I]t is difficult to know what, if any, new ideas we got from seeing the demonstration of their system. (Backus ) Taylor series In mathematics , the Taylor series or Taylor expansion of

432-498: A few centuries later. In the 14th century, the earliest examples of specific Taylor series (but not the general method) were given by Indian mathematician Madhava of Sangamagrama . Though no record of his work survives, writings of his followers in the Kerala school of astronomy and mathematics suggest that he found the Taylor series for the trigonometric functions of sine , cosine , and arctangent (see Madhava series ). During

480-1005: A general method for expanding functions in series. Newton had in fact used a cumbersome method involving long division of series and term-by-term integration, but Gregory did not know it and set out to discover a general method for himself. In early 1671 Gregory discovered something like the general Maclaurin series and sent a letter to Collins including series for arctan ⁡ x , {\textstyle \arctan x,} tan ⁡ x , {\textstyle \tan x,} sec ⁡ x , {\textstyle \sec x,} ln sec ⁡ x {\textstyle \ln \,\sec x} (the integral of tan {\displaystyle \tan } ), ln tan ⁡ 1 2 ( 1 2 π + x ) {\textstyle \ln \,\tan {\tfrac {1}{2}}{{\bigl (}{\tfrac {1}{2}}\pi +x{\bigr )}}} (the integral of sec ,

528-404: A method by Newton, Gregory never described how he obtained these series, and it can only be inferred that he understood the general method by examining scratch work he had scribbled on the back of another letter from 1671. In 1691–1692, Isaac Newton wrote down an explicit statement of the Taylor and Maclaurin series in an unpublished version of his work De Quadratura Curvarum . However, this work

SECTION 10

#1732787122665

576-490: A philosophical resolution of the paradox, but the mathematical content was apparently unresolved until taken up by Archimedes , as it had been prior to Aristotle by the Presocratic Atomist Democritus . It was through Archimedes's method of exhaustion that an infinite number of progressive subdivisions could be performed to achieve a finite result. Liu Hui independently employed a similar method

624-404: A radius of convergence 0 everywhere. A function cannot be written as a Taylor series centred at a singularity ; in these cases, one can often still achieve a series expansion if one allows also negative powers of the variable x ; see Laurent series . For example, f  ( x ) = e can be written as a Laurent series. The generalization of the Taylor series does converge to the value of

672-405: A reply to those who would like data processing people to use mathematical symbols that they make the first attempt to teach those symbols to vice-presidents or a colonel or admiral. I assure you that I tried it. In late 1953, she proposed that data processing problems should be expressed using English keywords, but Rand management considered the idea unfeasible. In early 1955, she and her team wrote

720-472: A specification for such a programming language and implemented a prototype. The FLOW-MATIC compiler became publicly available in early 1958 and was substantially complete in 1959. The Laning and Zierler system was the first programming language to parse algebraic formulae. When Hopper became aware of that language in 1954, it altered the trajectory of her work. FLOW-MATIC was the first programming language to express operations using English-like statements . It

768-559: Is infinitely differentiable at x = 0 , and has all derivatives zero there. Consequently, the Taylor series of f  ( x ) about x = 0 is identically zero. However, f  ( x ) is not the zero function, so does not equal its Taylor series around the origin. Thus, f  ( x ) is an example of a non-analytic smooth function . In real analysis , this example shows that there are infinitely differentiable functions f  ( x ) whose Taylor series are not equal to f  ( x ) even if they converge. By contrast,

816-482: Is formally similar to the Newton series . When the function f is analytic at a , the terms in the series converge to the terms of the Taylor series, and in this sense generalizes the usual Taylor series. In general, for any infinite sequence a i , the following power series identity holds: ∑ n = 0 ∞ u n n ! Δ n

864-401: Is no more than | x |  / 9! . For a full cycle centered at the origin ( −π < x < π ) the error is less than 0.08215. In particular, for −1 < x < 1 , the error is less than 0.000003. In contrast, also shown is a picture of the natural logarithm function ln(1 + x ) and some of its Taylor polynomials around a = 0 . These approximations converge to

912-650: Is the polynomial itself. The Maclaurin series of ⁠ 1 / 1 − x ⁠ is the geometric series 1 + x + x 2 + x 3 + ⋯ . {\displaystyle 1+x+x^{2}+x^{3}+\cdots .} So, by substituting x for 1 − x , the Taylor series of ⁠ 1 / x ⁠ at a = 1 is 1 − ( x − 1 ) + ( x − 1 ) 2 − ( x − 1 ) 3 + ⋯ . {\displaystyle 1-(x-1)+(x-1)^{2}-(x-1)^{3}+\cdots .} By integrating

960-404: Is undefined at 0. More generally, every sequence of real or complex numbers can appear as coefficients in the Taylor series of an infinitely differentiable function defined on the real line, a consequence of Borel's lemma . As a result, the radius of convergence of a Taylor series can be zero. There are even infinitely differentiable functions defined on the real line whose Taylor series have

1008-500: The UNIVAC A-0. The system accepted formulas in a more or less algebraic notation. It respected the standard rules for operator precedence , allowed nested parentheses, and used superscripts to indicate exponents . It was among the first programming systems to allow symbolic variable names and allocate storage automatically. The system also automated the following tasks: floating point computation, linkage to subroutines for

SECTION 20

#1732787122665

1056-1025: The exponential function e is ∑ n = 0 ∞ x n n ! = x 0 0 ! + x 1 1 ! + x 2 2 ! + x 3 3 ! + x 4 4 ! + x 5 5 ! + ⋯ = 1 + x + x 2 2 + x 3 6 + x 4 24 + x 5 120 + ⋯ . {\displaystyle {\begin{aligned}\sum _{n=0}^{\infty }{\frac {x^{n}}{n!}}&={\frac {x^{0}}{0!}}+{\frac {x^{1}}{1!}}+{\frac {x^{2}}{2!}}+{\frac {x^{3}}{3!}}+{\frac {x^{4}}{4!}}+{\frac {x^{5}}{5!}}+\cdots \\&=1+x+{\frac {x^{2}}{2}}+{\frac {x^{3}}{6}}+{\frac {x^{4}}{24}}+{\frac {x^{5}}{120}}+\cdots .\end{aligned}}} The above expansion holds because

1104-1024: The factorial of n . The function f ( a ) denotes the n th derivative of f evaluated at the point a . The derivative of order zero of f is defined to be f itself and ( x − a ) and 0! are both defined to be 1 . This series can be written by using sigma notation , as in the right side formula. With a = 0 , the Maclaurin series takes the form: f ( 0 ) + f ′ ( 0 ) 1 ! x + f ″ ( 0 ) 2 ! x 2 + f ‴ ( 0 ) 3 ! x 3 + ⋯ = ∑ n = 0 ∞ f ( n ) ( 0 ) n ! x n . {\displaystyle f(0)+{\frac {f'(0)}{1!}}x+{\frac {f''(0)}{2!}}x^{2}+{\frac {f'''(0)}{3!}}x^{3}+\cdots =\sum _{n=0}^{\infty }{\frac {f^{(n)}(0)}{n!}}x^{n}.} The Taylor series of any polynomial

1152-425: The holomorphic functions studied in complex analysis always possess a convergent Taylor series, and even the Taylor series of meromorphic functions , which might have singularities, never converge to a value different from the function itself. The complex function e , however, does not approach 0 when z approaches 0 along the imaginary axis, so it is not continuous in the complex plane and its Taylor series

1200-399: The square root , the logarithm , the trigonometric function tangent, and its inverse, arctan . For these functions the Taylor series do not converge if x is far from b . That is, the Taylor series diverges at x if the distance between x and b is larger than the radius of convergence . The Taylor series can be used to calculate the value of an entire function at every point, if

1248-404: The 18th century. The partial sum formed by the first n + 1 terms of a Taylor series is a polynomial of degree n that is called the n th Taylor polynomial of the function. Taylor polynomials are approximations of a function, which become generally more accurate as n increases. Taylor's theorem gives quantitative estimates on the error introduced by the use of such approximations. If

1296-542: The Laning and Zierler system on the development of FORTRAN is a question which has been muddled by many misstatements on my part. For many years I believed that we had gotten the idea for using algebraic notation in FORTRAN from seeing a demonstration of the Laning and Zierler system at MIT. (Backus ) After reviewing documentation from the time, Backus learned that the FORTRAN project was "well underway" when he and his team got

1344-408: The Taylor series of a function is convergent , its sum is the limit of the infinite sequence of the Taylor polynomials. A function may differ from the sum of its Taylor series, even if its Taylor series is convergent. A function is analytic at a point x if it is equal to the sum of its Taylor series in some open interval (or open disk in the complex plane ) containing x . This implies that

1392-482: The Taylor series. Thus a function is analytic in an open disk centered at b if and only if its Taylor series converges to the value of the function at each point of the disk. If f  ( x ) is equal to the sum of its Taylor series for all x in the complex plane, it is called entire . The polynomials, exponential function e , and the trigonometric functions sine and cosine, are examples of entire functions. Examples of functions that are not entire include

1440-567: The Whirlwind because it was too large for MIT's Differential Analyzer to handle. The authors, exploiting the Runge-Kutta feature of their programming system, produced a 97-statement program in two and half hours. The program ran successfully the first time. Some sources have said that the Laning and Zierler system was the inspiration for FORTRAN . John W. Backus himself admitted to having contributed to this misconception: The effect of

1488-492: The above Maclaurin series, we find the Maclaurin series of ln(1 − x ) , where ln denotes the natural logarithm : − x − 1 2 x 2 − 1 3 x 3 − 1 4 x 4 − ⋯ . {\displaystyle -x-{\tfrac {1}{2}}x^{2}-{\tfrac {1}{3}}x^{3}-{\tfrac {1}{4}}x^{4}-\cdots .} The corresponding Taylor series of ln x at

FLOW-MATIC - Misplaced Pages Continue

1536-411: The basic functions of analysis (sine, etc.) and printing, and arrays and indexing. The system accepted input on punched tape produced by a Friden Flexowriter . The character set in use at the Whirlwind installation included " upper-case " (superscript) digits and a hyphen, which were used to indicate array indices, function codes, and (integer) exponents. Like other programming notations of its time,

1584-449: The corresponding Taylor series of ln x at an arbitrary nonzero point a is: ln ⁡ a + 1 a ( x − a ) − 1 a 2 ( x − a ) 2 2 + ⋯ . {\displaystyle \ln a+{\frac {1}{a}}(x-a)-{\frac {1}{a^{2}}}{\frac {\left(x-a\right)^{2}}{2}}+\cdots .} The Maclaurin series of

1632-431: The derivative of e with respect to x is also e , and e equals 1. This leaves the terms ( x − 0) in the numerator and n ! in the denominator of each term in the infinite sum. The ancient Greek philosopher Zeno of Elea considered the problem of summing an infinite series to achieve a finite result, but rejected it as an impossibility; the result was Zeno's paradox . Later, Aristotle proposed

1680-471: The example serves to give a flavor of the system's syntax. Note that division in the system is evaluated after multiplication and that CP 1 is a conditional branch to equation 1 if the last quantity computed is negative: Few applications were written for the system. One documented application, authored by Laning and Zierler themselves, involved a problem in aeronautics. The problem required seven systems of differential equations to express, and had been given to

1728-578: The following two centuries his followers developed further series expansions and rational approximations. In late 1670, James Gregory was shown in a letter from John Collins several Maclaurin series ( sin ⁡ x , {\textstyle \sin x,} cos ⁡ x , {\textstyle \cos x,} arcsin ⁡ x , {\textstyle \arcsin x,} and x cot ⁡ x {\textstyle x\cot x} ) derived by Isaac Newton , and told that Newton had developed

1776-407: The function is analytic at every point of the interval (or disk). The Taylor series of a real or complex-valued function f  ( x ) , that is infinitely differentiable at a real or complex number a , is the power series f ( a ) + f ′ ( a ) 1 ! ( x − a ) + f ″ (

1824-431: The function itself for any bounded continuous function on (0,∞) , and this can be done by using the calculus of finite differences . Specifically, the following theorem, due to Einar Hille , that for any t > 0 , lim h → 0 + ∑ n = 0 ∞ t n n ! Δ h n f (

1872-399: The function only in the region −1 < x ≤ 1 ; outside of this region the higher-degree Taylor polynomials are worse approximations for the function. The error incurred in approximating a function by its n th-degree Taylor polynomial is called the remainder or residual and is denoted by the function R n ( x ) . Taylor's theorem can be used to obtain a bound on the size of

1920-525: The inverse Gudermannian function ), arcsec ⁡ ( 2 e x ) , {\textstyle \operatorname {arcsec} {\bigl (}{\sqrt {2}}e^{x}{\bigr )},} and 2 arctan ⁡ e x − 1 2 π {\textstyle 2\arctan e^{x}-{\tfrac {1}{2}}\pi } (the Gudermannian function). However, thinking that he had merely redeveloped

1968-749: The remainder . In general, Taylor series need not be convergent at all. In fact, the set of functions with a convergent Taylor series is a meager set in the Fréchet space of smooth functions . Even if the Taylor series of a function f does converge, its limit need not be equal to the value of the function f  ( x ) . For example, the function f ( x ) = { e − 1 / x 2 if  x ≠ 0 0 if  x = 0 {\displaystyle f(x)={\begin{cases}e^{-1/x^{2}}&{\text{if }}x\neq 0\\[3mu]0&{\text{if }}x=0\end{cases}}}

FLOW-MATIC - Misplaced Pages Continue

2016-409: The special case of the Taylor result in the mid-18th century. If f  ( x ) is given by a convergent power series in an open disk centred at b in the complex plane (or an interval in the real line), it is said to be analytic in this region. Thus for x in this region, f is given by a convergent power series f ( x ) = ∑ n = 0 ∞

2064-588: The system accepted only single-letter variable names and multiplication was indicated by juxtaposition of operands. A raised dot was available to indicate multiplication explicitly (the character was created by filing off the lower half of a colon!) The system also included support for solution of linear differential equations via the Runge–Kutta method . The system was described in an 18-page typewritten manual written for people familiar with mathematics but perhaps unfamiliar with computers. It contains almost nothing in

2112-636: The value of the function, and of all of its derivatives, are known at a single point. Uses of the Taylor series for analytic functions include: Pictured is an accurate approximation of sin x around the point x = 0 . The pink curve is a polynomial of degree seven: sin ⁡ x ≈ x − x 3 3 ! + x 5 5 ! − x 7 7 ! . {\displaystyle \sin {x}\approx x-{\frac {x^{3}}{3!}}+{\frac {x^{5}}{5!}}-{\frac {x^{7}}{7!}}.\!} The error in this approximation

2160-528: The way of an introduction to computer hardware. The following example, taken from page 11 of the system's manual, evaluates cos ⁡ x {\displaystyle \cos x} for x = 0 , 0.1 , . . . , 1 {\displaystyle x=0,0.1,...,1} using the Taylor series expansion. The implementation is not terribly efficient, and the system already includes cos ⁡ x {\displaystyle \cos x} in its subroutine library, but

2208-524: Was also the first system to distinctly separate the description of data from the operations on it. Its data definition language , unlike its executable statements, was not English-like; rather, data structures were defined by filling in pre-printed forms. FLOW-MATIC and its direct descendant AIMACO shaped COBOL , which incorporated several of its elements: A sample FLOW-MATIC program: Sample Notes Laning and Zierler system The Laning and Zierler system (sometimes called "George" by its users)

2256-438: Was never completed and the relevant sections were omitted from the portions published in 1704 under the title Tractatus de Quadratura Curvarum . It was not until 1715 that a general method for constructing these series for all functions for which they exist was finally published by Brook Taylor , after whom the series are now named. The Maclaurin series was named after Colin Maclaurin , a Scottish mathematician, who published

2304-487: Was the first operating algebraic compiler , that is, a system capable of accepting mathematical formulas in algebraic notation and producing equivalent machine code (the term compiler had not yet been invented and the system was referred to as "an interpretive program"). It was implemented in 1952 for the MIT WHIRLWIND by J. Halcombe Laning and Neal Zierler. It is preceded by non-algebraic compilers such as

#664335