<電子ブック>
Programming for Mathematicians / by Raymond Seroul
(Universitext. ISSN:01725939)
版 | 1st ed. 2000. |
---|---|
出版者 | Berlin, Heidelberg : Springer Berlin Heidelberg : Imprint: Springer |
出版年 | 2000 |
大きさ | XVI, 432 p. 8 illus : online resource |
著者標目 | *Seroul, Raymond author SpringerLink (Online service) |
件 名 | LCSH:Applied mathematics LCSH:Engineering mathematics LCSH:Software engineering LCSH:Computer mathematics LCSH:Computer programming FREE:Applications of Mathematics FREE:Software Engineering/Programming and Operating Systems FREE:Computational Mathematics and Numerical Analysis FREE:Programming Techniques |
一般注記 | 1. Programming Proverbs -- 1.1. Above all, no tricks! -- 1.2. Do not chewing gum while climbing stairs -- 1.3. Name that which you still don’t know -- 1.4. Tomorrow, things will be better; the day after, better still -- 1.5. Never execute an order before it is given -- 1.6. Document today to avoid tears tomorrow -- 1.7. Descartes’ Discourse on the Method -- 2. Review of Arithmetic -- 2.1. Euclidean Division -- 2.2. Numeration Systems -- 2.3. Prime Numbers -- 2.3.1. The number of primes smaller than a given real number -- 2.4. The Greatest Common Divisor -- 2.5. Congruences -- 2.6. The Chinese Remainder Theorem -- 2.7. The Euler phi Function -- 2.8. The Theorems of Fermat and Euler -- 2.9. Wilson’s Theorem -- 2.10. Quadratic Residues -- 2.11. Prime Number and Sum of Two Squares -- 2.12. The Moebius Function -- 2.13. The Fibonacci Numbers -- 2.14. Reasoning by Induction -- 2.15. Solutions of the Exercises -- 3. An Algorithmic Description Language -- 3.1. Identifiers -- 3.2. Arithmetic Expressions -- 3.3. Boolean Expressions -- 3.4. Statements and their Syntax -- 3.5. The Semantics of Statements -- 3.6. Which Loop to Choose? -- 4. How to Create an Algorithm -- 4.1. The Trace of an Algorithm -- 4.2. First Method: Recycling Known Code -- 4.3. Second Method: Using Sequences -- 4.4. Third Method: Defered Writing -- 4.5. How to Prove an Algorithm -- 4.6. Solutions of the Exercises -- 5. Algorithms and Classical Constructions -- 5.1. Exchanging the Contents of Two Variables -- 5.2. Diverse Sums -- 5.3. Searching for a Maximum -- 5.4. Solving a Triangular Cramer System -- 5.5. Rapid Calculation of Powers -- 5.6. Calculation of the Fibonacci Numbers -- 5.7. The Notion of a Stack -- 5.8. Linear Traversal of a Finite Set -- 5.9. The Lexicographic Order -- 5.10. Solutions to the Exercises -- 6. The Pascal Language -- 6.1. Storage of the Usual Objects -- 6.2. Integer Arithmetic in Pascal -- 6.3. Arrays in Pascal -- 6.4. Declaration of an Array -- 6.5. Product Sets and Types -- 6.6. The Role of Constants -- 6.7. Litter -- 6.8. Procedures -- 6.9. Visibility of the Variables in a Procedure -- 6.10. Context Effects -- 6.11. Procedures: What the Program Seems To Do -- 6.12. Solutions of the Exercises -- 7. How to Write a Program -- 7.1. Inverse of an Order 4 Matrix -- 7.2. Characteristic Polynomial of a Matrix -- 7.3. How to Write a Program -- 7.4. A Poorly Written Procedure -- 8. The Integers -- 8.1. The Euclidean Algorithm -- 8.2. The Blankinship Algorithm -- 8.3. Perfect Numbers -- 8.4. The Lowest Divisor Function -- 8.5. The Moebius Function -- 8.6. The Sieve of Eratosthenes -- 8.7. The Function pi(x) -- 8.8. Egyptian Fractions -- 8.9. Operations on Large Integers -- 8.10. Division in Base b -- 8.11. Sums of Fibonacci Numbers -- 8.12. Odd Primes as a Sum of Two Squares -- 8.13. Sums of Four Squares -- 8.14. Highly Composite Numbers -- 8.15. Permutations: Johnson’s’ Algorithm -- 8.16. The Count is Good -- 9. The Complex Numbers -- 9.1. The Gaussian Integers -- 9.2. Bases of Numeration in the Gaussian Integers -- 9.3. Machin Formulas -- 10. Polynomials -- 10.1. Definitions -- 10.2. Degree of a Polynomial -- 10.3. How to Store a Polynomial -- 10.4. The Conventions we Adopt -- 10.5. Euclidean Division -- 10.6. Evaluation of Polynomials: Horner’s Method -- 10.7. Translation and Composition -- 10.8. Cyclotomic Polynomials -- 10.9. Lagrange Interpolation -- 10.10. Basis Change -- 10.11. Differentiation and Discrete Taylor Formulas -- 10.12. Newton-Girard Formulas -- 10.13. Stable Polynomials -- 10.14. Factoring a Polynomial with Integral Coefficients -- 11. Matrices -- 11.1. Z-Linear Algebra -- 11.2. Linear Systems with Integral Coefficients -- 11.3. Exponential of a Matrix: Putzer’s Algorithm -- 11.4. Jordan Reduction -- 12. Recursion -- 12.1. Presentation -- 12.2. The Ackermann function -- 12.3. The Towers of Hanoi -- 12.4. Baguenaudier -- 12.5. The Hofstadter Function -- 12.6. How to Write a Recursive Code -- 13. Elements of compiler theory -- 13.1. Pseudocode -- 13.2. A Pseudocode Interpreter -- 13.3. How to Analyze an Arithmetic Expression -- 13.4. How to Evaluate an Arithmetic Expression -- 13.5. How to Compile an Arithmetic Expression -- References The aim of this book is to teach mathematics students how to program using their knowledge of mathematics. For this they require only to know how to construct a proof. The entire book's emphasis is on "how to think" when programming. Three methods for constructing an algorithm or a program are used: a) manipulation and enrichment of existing code; b) use of recurrent sequences; c) deferral of code writing, in order to deal with one difficulty at a time. Many theorems are mathematically proved and programmed. The last chapter explains how a compiler works and shows how to compile "by hand" little (but not trivial--even recursive) programs. The book is intended for anyone who thinks mathematically and wants to program and play with mathematics HTTP:URL=https://doi.org/10.1007/978-3-642-57129-9 |
目次/あらすじ
所蔵情報を非表示
電子ブック | 配架場所 | 資料種別 | 巻 次 | 請求記号 | 状 態 | 予約 | コメント | ISBN | 刷 年 | 利用注記 | 指定図書 | 登録番号 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
電子ブック | オンライン | 電子ブック |
|
|
Springer eBooks | 9783642571299 |
|
電子リソース |
|
EB00162397 |
類似資料
この資料の利用統計
このページへのアクセス回数:4回
※2017年9月4日以降