Monday, September 30, 2019

Anatomy and Histology of the Small and Large Intestine

Anatomy and Histology of the Small and Large Intestine MACROSCOPIC FEATURES Small Intestine The small intestine is a specialized tubular structure within the abdominal cavity in continuity with the stomach proximally and the colon distally. The small bowel increases 20 times in length with aging, from 200 cm in the newborn to almost 6 m in the adult, and its length is approximated by three times the length of the infant, or height of the child or adult. 1] The duodenum, the most proximal portion of the small intestine, begins at the duodenal bulb, travels in the retroperitoneal space around the head of the pancreas, and ends on its return to the peritoneal cavity at the ligament of Treitz. The remainder of the small intestine is suspended within the peritoneal cavity by a thin, broad-based mesentery that is attached to the posterior abdominal wall and allows free movement of the small intestine within the abdominal cavity. The proximal 40% of the mobile small intestine is the jejunum , and the remaining 60% is the ileum.The jejunum occupies the left upper portion of the abdomen, and the ileum is positioned in the right abdomen and upper part of the pelvis. No distinct anatomic demarcation exists between jeju-num and ileum. Visual examination of the luminal surface of the small intestine reveals mucosal folds, the plicae circulares. More numerous in the proximal jejunum, the plicae circulares decrease in number in the distal small bowel and are absent in the terminal ileum. Aggregates of lymphoid follicles are scattered throughout the small intestine but are found in highest concentration within the ileum, where they are designated Peyer's patches.Peyer's patches normally are more prominent during infancy and childhood than they are in adulthood. The small bowel is in continuity with the colon at the ileocecal valve, which comprises two semilunar lips that protrude into the cecum. The ileocecal valve provides a barrier to the retrograde flow of colonic contents i nto the small intestine. This barrier appears to be a function of the angulation between the ileum and cecum that is maintained by the superior and inferior ileoceal ligaments,[2] and a true tonic, sphincter-type pressure does not appear to be present in this region.Colon and Rectum The colon is a tubular structure approximately 30 to 40 cm in length at birth in the full-term infant. In the adult, the colon measures 1. 5 m, about one quarter of the length of the small bowel. The diameter of the colon is greatest in the cecum (7. 5 cm) and narrowest in the sigmoid (2. 5 cm). The colon is continuous with the small intestine proximally at the ileocecal valve and ends distally at the anal verge ( Fig. 93-1 ).The external appearance of the colon differs from that of the small bowel, because the longitudinal muscle fibers of the colon coalesce into three discrete bands called teniae, located at 120-degree intervals about the colonic circumference: tenia liberis, tenia omentalis, and tenia mesocolica. The teniae start at the base of the appendix and extend continuously to the proximal rectum. Outpouchings of the colon, the haustra, are found between the teniae. Semilunar folds characterize the mucosa between the haustra. Sacs of peritoneum filled with adipose tissue, the appendices epiploicae, are found on the surface of the colon.

Sunday, September 29, 2019

Sage 50 Accounting Software Tutorial

Sage Tutorial Release 5. 3 The Sage Development Team September 10, 2012 CONTENTS 1 Introduction 1. 1 Installation 1. 2 Ways to Use Sage . . 1. 3 Longterm Goals for Sage . . 3 4 4 4 7 7 9 10 13 18 21 24 26 29 33 38 39 41 51 51 53 54 54 55 56 57 58 60 61 62 65 65 66 67 68 2 A Guided Tour 2. 1 Assignment, Equality, and Arithmetic 2. Getting Help . 2. 3 Functions, Indentation, and Counting 2. 4 Basic Algebra and Calculus . . 2. 5 Plotting . 2. 6 Some Common Issues with Functions 2. 7 Basic Rings . . 2. 8 Linear Algebra 2. 9 Polynomials . 2. 10 Parents, Conversion and Coercion . . 2. 11 Finite Groups, Abelian Groups . 2. 12 Number Theory . . 2. 13 Some More Advanced Mathematics 3 The Interactive Shell 3. 1 Your Sage Session . . 3. 2 Logging Input and Output . 3. 3 Paste Ignores Prompts 3. 4 Timing Commands . . 3. 5 Other IPython tricks . 3. 6 Errors and Exceptions 3. 7 Reverse Search and Tab Completion . . 3. 8 Integrated Help System . 3. 9 Saving and Loading Individual Objects 3. 10 Savi ng and Loading Complete Sessions 3. 11 The Notebook Interface . . 4 Interfaces 4. 1 GP/PARI 4. 2 GAP . . 4. 3 Singular . 4. 4 Maxima i 5 Sage, LaTeX and Friends 5. 1 Overview . . 5. 2 Basic Use . . 5. 3 Customizing LaTeX Generation . . 5. 4 Customizing LaTeX Processing . . 5. 5 An Example: Combinatorial Graphs with tkz-graph . 5. 6 A Fully Capable TeX Installation . 5. 7 External Programs . 71 71 72 73 75 76 77 77 79 79 80 81 81 82 84 85 86 86 88 91 93 93 94 95 97 97 99 101 103 105 6 Programming 6. 1 Loading and Attaching Sage ? les 6. 2 Creating Compiled Code . 6. 3 Standalone Python/Sage Scripts . 6. 4 Data Types 6. 5 Lists, Tuples, and Sequences 6. 6 Dictionaries 6. 7 Sets . 6. 8 Iterators . . 6. 9 Loops, Functions, Control Statements, and Comparisons 6. 10 Pro? ling . 7 Using SageTeX 8 . . Afterword 8. 1 Why Python? . . 8. I would like to contribute somehow. How can I? . 8. 3 How do I reference Sage? . 9 Appendix 9. 1 Arithmetical binary operator precedence . . 10 Bibliography 1 1 Indices and tables Bibliography Index ii Sage Tutorial, Release 5. 3 Sage is free, open-source math software that supports research and teaching in algebra, geometry, number theory, cryptography, numerical computation, and related areas. Both the Sage development model and the technology in Sage itself are distinguished by an extremely strong emphasis on openness, community, cooperation, and collaboration: we are building the car, not reinventing the wheel. The overall goal of Sage is to create a viable, free, open-source alternative to Maple, Mathematica, Magma, and MATLAB. This tutorial is the best way to become familiar with Sage in only a few hours. You can read it in HTML or PDF versions, or from the Sage notebook (click Help, then click Tutorial to interactively work through the tutorial from within Sage). This work is licensed under a Creative Commons Attribution-Share Alike 3. 0 License. CONTENTS 1 Sage Tutorial, Release 5. 3 2 CONTENTS CHAPTER ONE INTRODUCTION This tutorial should take at most 3-4 hours to fully work through. You can read it in HTML or PDF versions, or from the Sage notebook click Help, then click Tutorial to interactively work through the tutorial from within Sage. Though much of Sage is implemented using Python, no Python background is needed to read this tutorial. You will want to learn Python (a very fun language! ) at some point, and there are many excellent free resources for doing so including [PyT] and [Dive]. If you just want to quickly try out Sage, this tutorial is the place to start. For example: sage: 2 + 2 4 sage: factor(-2007) -1 * 3^2 * 223 sage: A = matrix(4,4, range(16)); A [ 0 1 2 3] [ 4 5 6 7] [ 8 9 10 11] [12 13 14 15] sage: factor(A. charpoly()) x^2 * (x^2 – 30*x – 80) sage: m = matrix(ZZ,2, range(4)) sage: m[0,0] = m[0,0] – 3 sage: m [-3 1] [ 2 3] sage: E = EllipticCurve([1,2,3,4,5]); sage: E Elliptic Curve defined by y^2 + x*y + 3*y = x^3 + 2*x^2 + 4*x + 5 over Rational Field sage: E. anlist(10) [0, 1, 1, 0, -1, -3, 0, -1, -3, -3, -3] sage: E. ank() 1 sage: k = 1/(sqrt(3)*I + 3/4 + sqrt(73)*5/9); k 1/(I*sqrt(3) + 5/9*sqrt(73) + 3/4) sage: N(k) 0. 165495678130644 – 0. 0521492082074256*I sage: N(k,30) # 30 â€Å"bits† 0. 16549568 – 0. 052149208*I sage: latex(k) frac{1}{i , sqrt{3} + frac{5}{9} , sqrt{73} + frac{3}{4}} 3 Sage Tutorial, Release 5. 3 1. 1 Installation If you do not have Sage installed on a computer and just want to try s ome commands, use online at http://www. sagenb. org. See the Sage Installation Guide in the documentation section of the main Sage webpage [SA] for instructions on installing Sage on your computer. Here we merely make a few comments. 1. The Sage download ? le comes with â€Å"batteries included†. In other words, although Sage uses Python, IPython, PARI, GAP, Singular, Maxima, NTL, GMP, and so on, you do not need to install them separately as they are included with the Sage distribution. However, to use certain Sage features, e. g. , Macaulay or KASH, you must install the relevant optional package or at least have the relevant programs installed on your computer already. Macaulay and KASH are Sage packages (for a list of available optional packages, type sage -optional, or browse the â€Å"Download† page on the Sage website). . The pre-compiled binary version of Sage (found on the Sage web site) may be easier and quicker to install than the source code version. Just unpack the ? le and run sage. 3. If you’d like to use the SageTeX package (which allows you to embed the results of Sage computations into a LaTeX ? le), you will need to make SageTeX known to yo ur TeX distribution. To do this, see the section â€Å"Make SageTeX known to TeX† in the Sage installation guide (this link should take you to a local copy of the installation guide). It’s quite easy; you just need to set an environment variable or copy a single ? e to a directory that TeX will search. The documentation for using SageTeX is located in $SAGE_ROOT/local/share/texmf/tex/generic/sagetex/, where â€Å"$SAGE_ROOT† refers to the directory where you installed Sage – for example, /opt/sage-4. 2. 1. 1. 2 Ways to Use Sage You can use Sage in several ways. †¢ Notebook graphical interface: see the section on the Notebook in the reference manual and The Notebook Interface below, †¢ Interactive command line: see The Interactive Shell, †¢ Programs: By writing interpreted and compiled programs in Sage (see Loading and Attaching Sage ? es and Creating Compiled Code), and †¢ Scripts: by writing stand-alone Python scripts that use the Sag e library (see Standalone Python/Sage Scripts). 1. 3 Longterm Goals for Sage †¢ Useful: Sage’s intended audience is mathematics students (from high school to graduate school), teachers, and research mathematicians. The aim is to provide software that can be used to explore and experiment with mathematical constructions in algebra, geometry, number theory, calculus, numerical computation, etc. Sage helps make it easier to interactively experiment with mathematical objects. Ef? cient: Be fast. Sage uses highly-optimized mature software like GMP, PARI, GAP, and NTL, and so is very fast at certain operations. †¢ Free and open source: The source code must be freely available and readable, so users can understand what the system is really doing and more easily extend it. Just as mathematicians gain a deeper understanding of a theorem by carefully reading or at least skimming the proof, people who do computations should be able to understand how the calculations work by re ading documented source code. If you use Sage to do computations 4 Chapter 1. Introduction Sage Tutorial, Release 5. 3 in a paper you publish, you can rest assured that your readers will always have free access to Sage and all its source code, and you are even allowed to archive and re-distribute the version of Sage you used. †¢ Easy to compile: Sage should be easy to compile from source for Linux, OS X and Windows users. This provides more ? exibility for users to modify the system. †¢ Cooperation: Provide robust interfaces to most other computer algebra systems, including PARI, GAP, Singular, Maxima, KASH, Magma, Maple, and Mathematica. Sage is meant to unify and extend existing math software. †¢ Well documented: Tutorial, programming guide, reference manual, and how-to, with numerous examples and discussion of background mathematics. †¢ Extensible: Be able to de? ne new data types or derive from built-in types, and use code written in a range of languages. †¢ User friendly: It should be easy to understand what functionality is provided for a given object and to view documentation and source code. Also attain a high level of user support. 1. 3. Longterm Goals for Sage 5 Sage Tutorial, Release 5. 3 6 Chapter 1. Introduction CHAPTER TWO A GUIDED TOUR This section is a guided tour of some of what is available in Sage. For many more examples, see â€Å"Sage Constructions†, which is intended to answer the general question â€Å"How do I construct ? †. See also the â€Å"Sage Reference Manual†, which has thousands more examples. Also note that you can interactively work through this tour in the Sage notebook by clicking the Help link. (If you are viewing the tutorial in the Sage notebook, press shift-enter to evaluate any input cell. You can even edit the input before pressing shift-enter. On some Macs you might have to press shift-return rather than shift-enter. ) 2. 1 Assignment, Equality, and Arithmetic With some minor exceptions, Sage uses the Python programming language, so most introductory books on Python will help you to learn Sage. Sage uses = for assignment. It uses ==, =, < and > for comparison: sage: sage: 5 sage: True sage: False sage: True sage: True a = 5 a 2 == 2 2 == 3 2 < 3 a == 5 Sage provides all of the basic mathematical operations: age: 8 sage: 8 sage: 1 sage: 5/2 sage: 2 sage: True 2**3 2^3 10 % 3 10/4 10//4 # for integer arguments, // returns the integer quotient # # # ** means exponent ^ is a synonym for ** (unlike in Python) for integer arguments, % means mod, i. e. , remainder 4 * (10 // 4) + 10 % 4 == 10 7 Sage Tutorial, Release 5. 3 sage: 3^2*4 + 2%5 38 The computation of an expression like 3^2*4 + 2%5 depends on the order in which the operations are applied; this is speci? ed in the â€Å"operator precedence table† in Arithmetical binary operator precedence. Sage also provides many familiar mathematical functions; here are just a few examples: sage: sqrt(3. ) 1. 84390889145858 sage: sin(5. 135) -0. 912021158525540 sage: sin(pi/3) 1/2*sqrt(3) As the last example shows, some mathematical expressions return ‘exact’ values, rather than numerical approximations. To get a numerical approximation, use either the function n or the method n (and both of these have a longer name, numerical_approx, and the function N is the same as n)). These take optional arguments prec, which is the requested number of bits of precision, and digits, which is the requested number of decimal digits of precision; the default is 53 bits of precision. sage: exp(2) e^2 sage: n(exp(2)) 7. 8905609893065 sage: sqrt(pi). numerical_approx() 1. 77245385090552 sage: sin(10). n(digits=5) -0. 54402 sage: N(sin(10),digits=10) -0. 5440211109 sage: numerical_approx(pi, prec=200) 3. 14 15926535897932384626433832795028841971693993751058209749 Python is dynamically typed, so the value referred to by each variable has a type associated with it, but a given variable may hold values of any Python type within a given scope: sage: sage: The C programming language, which is statically typed, is much different; a variable declared to hold an int can only hold an int in its scope. A potential source of confusion in Python is that an integer literal that begins with a zero is treated as an octal number, i. e. , a number in base 8. sage: 9 sage: 9 sage: sage: ’11’ 011 8 + 1 n = 011 n. str(8) # string representation of n in base 8 8 Chapter 2. A Guided Tour Sage Tutorial, Release 5. 3 This is consistent with the C programming language. 2. 2 Getting Help Sage has extensive built-in documentation, accessible by typing the name of a function or a constant (for example), followed by a question mark: sage: tan? Type: Definition: Docstring: tan( [noargspec] ) The tangent function EXAMPLES: sage: tan(pi) 0 sage: tan(3. 1415) -0. 0000926535900581913 sage: tan(3. 1415/4) 0. 999953674278156 sage: tan(pi/4) 1 sage: tan(1/2) tan(1/2) sage: RR(tan(1/2)) 0. 546302489843790 sage: log2? Type: Definition: log2( [noargspec] ) Docstring: The natural logarithm of the real number 2. EXAMPLES: sage: log2 log2 sage: float(log2) 0. 69314718055994529 sage: RR(log2) 0. 693147180559945 sage: R = RealField(200); R Real Field with 200 bits of precision sage: R(log2) 0. 9314718055994530941723212145817656807550013436025525412068 sage: l = (1-log2)/(1+log2); l (1 – log(2))/(log(2) + 1) sage: R(l) 0. 18123221829928249948761381864650311423330609774776013488056 sage: maxima(log2) log(2) sage: maxima(log2). float() . 6931471805599453 sage: gp(log2) 0. 6931471805599453094172321215 # 32-bit 0. 69314718055994530941723212145817656807 # 64-bit sage: sudoku? 2. 2. Getting Help 9 Sage Tutorial, Release 5. 3 File: Type: D efinition: Docstring: sage/local/lib/python2. 5/site-packages/sage/games/sudoku. py sudoku(A) Solve the 9Ãâ€"9 Sudoku puzzle defined by the matrix A. EXAMPLE: sage: A = matrix(ZZ,9,[5,0,0, 0,8,0, 0,4,9, 0,0,0, 5,0,0, 0,3,0, 0,6,7, 3,0,0, 0,0,1, 1,5,0, 0,0,0, 0,0,0, 0,0,0, 2,0,8, 0,0,0, 0,0,0, 0,0,0, 0,1,8, 7,0,0, 0,0,4, 1,5,0, 0,3,0, 0,0,2, 0,0,0, 4,9,0, 0,5,0, 0,0,3]) sage: A [5 0 0 0 8 0 0 4 9] [0 0 0 5 0 0 0 3 0] [0 6 7 3 0 0 0 0 1] [1 5 0 0 0 0 0 0 0] [0 0 0 2 0 8 0 0 0] [0 0 0 0 0 0 0 1 8] [7 0 0 0 0 4 1 5 0] [0 3 0 0 0 2 0 0 0] [4 9 0 0 5 0 0 0 3] sage: sudoku(A) [5 1 3 6 8 7 2 4 9] [8 4 9 5 2 1 6 3 7] [2 6 7 3 4 9 5 8 1] [1 5 8 4 6 3 9 7 2] [9 7 4 2 1 8 3 6 5] [3 2 6 7 9 5 4 1 8] [7 8 2 9 3 4 1 5 6] [6 3 5 1 7 2 8 9 4] [4 9 1 8 5 6 7 2 3] Sage also provides ‘Tab completion’: type the ? rst few letters of a function and then hit the tab key. For example, if you type ta followed by TAB, Sage will print tachyon, tan, tanh, taylor. This provides a good way to ? nd the names of functions and other structures in Sage. 2. 3 Functions, Indentation, and Counting To de? ne a new function in Sage, use the def command and a colon after the list of variable names. For example: sage: def is_even(n): return n%2 == 0 sage: is_even(2) True sage: is_even(3) False Note: Depending on which version of the tutorial you are viewing, you may see three dots n the second line of this example. Do not type them; they are just to emphasize that the code is indented. Whenever this is the case, press [Return/Enter] once at the end of the block to insert a blank line and conclude the function de? nition. You do not specify the types of any of the input arguments. You can specify multiple inputs, each of which may have an optional defaul t value. For example, the function below defaults to divisor=2 if divisor is not speci? ed. 10 Chapter 2. A Guided Tour Sage Tutorial, Release 5. 3 sage: sage: True sage: True sage: False ef is_divisible_by(number, divisor=2): return number%divisor == 0 is_divisible_by(6,2) is_divisible_by(6) is_divisible_by(6, 5) You can also explicitly specify one or either of the inputs when calling the function; if you specify the inputs explicitly, you can give them in any order: sage: is_divisible_by(6, divisor=5) False sage: is_divisible_by(divisor=2, number=6) True In Python, blocks of code are not indicated by curly braces or begin and end blocks as in many other languages. Instead, blocks of code are indicated by indentation, which must match up exactly. For example, the following is a syntax error because the return statement is not indented the same amount as the other lines above it. sage: def even(n): v = [] for i in range(3,n): if i % 2 == 0: v. append(i) return v Syntax Error: return v If you ? x the indentation, the function works: sage: def even(n): v = [] for i in range(3,n): if i % 2 == 0: v. append(i) return v sage: even(10) [4, 6, 8] Semicolons are not needed at the ends of lines; a line is in most cases ended by a newline. However, you can put multiple statements on one line, separated by semicolons: sage: a = 5; b = a + 3; c = b^2; c 64 If you would like a single line of code to span multiple lines, use a terminating backslash: sage: 2 + 3 5 In Sage, you count by iterating over a range of integers. For example, the ? rst line below is exactly like for(i=0; i x^2 sage: g(3) 9 sage: Dg = g. derivative(); Dg x |–> 2*x sage: Dg(3) 6 sage: type(g) sage: plot(g, 0, 2) Note that while g is a callable symbolic expression, g(x) is a related, but different sort of object, which can also be plotted, differentated, etc. , albeit with some issues: see item 5 below for an illustration. sage: x^2 sage: g(x). derivative() plot(g(x), 0, 2) 3. Use a pre-de? ed Sage ‘calculus function’. These can be plotted, and with a little help, differentiated, and integrated. sage: type(sin) sage: plot(sin, 0, 2) sage: type(sin(x)) sage: plot(sin(x), 0, 2) By itself, sin cannot be differentiated, at least not to produce cos. sage: f = sin sage: f. derivative() Traceback (most recent call last): AttributeError: Using f = sin(x) instead of sin works, but it is probably even better to use f(x) = sin(x) to de? ne a callable symbolic expression. sage: S(x) = sin(x) sage: S. derivative() x |–> cos(x) Here are some common problems, with explanations: 4. Accidental evaluation. sage: def h(x): f x 1 to 0. sage: G = DirichletGroup(12) sage: G. list() [Dirichlet character modulo 12 of conductor 1 mapping 7 |–> 1, 5 |–> 1, Dirichlet character modulo 12 of conductor 4 mapping 7 |–> -1, 5 |–> 1, Dirichlet character modulo 12 of conductor 3 mapping 7 |–> 1, 5 |–> -1, Dirichlet character modulo 12 of conductor 12 mapping 7 |–> -1, 5 |–> -1] sage: G. gens() (Dirichlet character modulo 12 of conductor 4 mapping 7 |–> -1, 5 |–> 1, Dirichlet character modulo 12 of conductor 3 mapping 7 |–> 1, 5 |–> -1) sage: len(G) 4 Having created the group, we next create an element and compute with it. age: G = DirichletGroup(21) sage: chi = G. 1; c hi Dirichlet character modulo 21 of conductor 7 mapping 8 |–> 1, 10 |–> zeta6 sage: chi. values() [0, 1, zeta6 – 1, 0, -zeta6, -zeta6 + 1, 0, 0, 1, 0, zeta6, -zeta6, 0, -1, 0, 0, zeta6 – 1, zeta6, 0, -zeta6 + 1, -1] sage: chi. conductor() 7 sage: chi. modulus() 21 sage: chi. order() 6 sage: chi(19) -zeta6 + 1 sage: chi(40) -zeta6 + 1 It is also possible to compute the action of the Galois group Gal(Q(? N )/Q) on these characters, as well as the direct product decomposition corresponding to the factorization of the modulus. sage: chi. alois_orbit() [Dirichlet character modulo 21 of conductor 7 mapping 8 |–> 1, 10 |–> zeta6, 2. 13. Some More Advanced Mathematics 45 Sage Tutorial, Release 5. 3 Dirichlet character modulo 21 of conductor 7 mapping 8 |–> 1, 10 |–> -zeta6 + 1] sage: go = G. galois_orbits() sage: [len(orbit) for orbit in go] [1, 2, 2, 1, 1, 2, 2, 1] sage: [ Group 6 and Group 6 and ] G. decomposition() of Dirichlet char acters of modulus 3 over Cyclotomic Field of order degree 2, of Dirichlet characters of modulus 7 over Cyclotomic Field of order degree 2 Next, we construct the group of Dirichlet characters mod 20, but with values n Q(i): sage: sage: sage: Group K. = NumberField(x^2+1) G = DirichletGroup(20,K) G of Dirichlet characters of modulus 20 over Number Field in i with defining polynomial x^2 + 1 We next compute several invariants of G: sage: G. gens() (Dirichlet character modulo 20 of conductor 4 mapping 11 |–> -1, 17 |–> 1, Dirichlet character modulo 20 of conductor 5 mapping 11 |–> 1, 17 |–> i) sage: G. unit_gens() [11, 17] sage: G. zeta() i sage: G. zeta_order() 4 In this example we create a Dirichlet character with values in a number ? eld. We explicitly specify the choice of root of unity by the third argument to DirichletGroup below. age: x = polygen(QQ, ’x’) sage: K = NumberField(x^4 + 1, ’a’); a = K. 0 sage: b = K. gen(); a == b True sage: K Number Field in a with defining polynomial x^4 + 1 sage: G = DirichletGroup(5, K, a); G Group of Dirichlet characters of modulus 5 over Number Field in a with defining polynomial x^4 + 1 sage: chi = G. 0; chi Dirichlet character modulo 5 of conductor 5 mapping 2 |–> a^2 sage: [(chi^i)(2) for i in range(4)] [1, a^2, -1, -a^2] Here NumberField(x^4 + 1, ’a’) tells Sage to use the symbol â€Å"a† in printing what K is (a Number Field in a with de? ning polynomial x4 + 1). The name â€Å"a† is undeclared at this point. Once a = K. 0 (or equivalently a = K. gen()) is evaluated, the symbol â€Å"a† represents a root of the generating polynomial x4 + 1. 46 Chapter 2. A Guided Tour Sage Tutorial, Release 5. 3 2. 13. 4 Modular Forms Sage can do some computations related to modular forms, including dimensions, computing spaces of modular symbols, Hecke operators, and decompositions. There are several functions available for computing dimensions of spaces of modular forms. For example, sage: dimension_cusp_forms(Gamma0(11),2) 1 sage: dimension_cusp_forms(Gamma0(1),12) 1 sage: dimension_cusp_forms(Gamma1(389),2) 6112 Next we illustrate computation of Hecke operators on a space of modular symbols of level 1 and weight 12. sage: M = ModularSymbols(1,12) sage: M. basis() ([X^8*Y^2,(0,0)], [X^9*Y,(0,0)], [X^10,(0,0)]) sage: t2 = M. T(2) sage: t2 Hecke operator T_2 on Modular Symbols space of dimension 3 for Gamma_0(1) of weight 12 with sign 0 over Rational Field sage: t2. matrix() [ -24 0 0] [ 0 -24 0] [4860 0 2049] sage: f = t2. charpoly(’x’); f x^3 – 2001*x^2 – 97776*x – 1180224 sage: factor(f) (x – 2049) * (x + 24)^2 sage: M. T(11). charpoly(’x’). factor() (x – 285311670612) * (x – 534612)^2 We can also create spaces for ? 0 (N ) and ? 1 (N ). sage: ModularSymbols(11,2) Modular Symbols space of dimension 3 for Gamma_0(11) of weight 2 with sign 0 over Rational Field sage: ModularSymbols(Gamma1(11),2) Modular Symbols space of dimension 11 for Gamma_1(11) of weight 2 with sign 0 and over Rational Field Let’s compute some characteristic polynomials and q-expansions. sage: M = ModularSymbols(Gamma1(11),2) sage: M. T(2). charpoly(’x’) x^11 – 8*x^10 + 20*x^9 + 10*x^8 – 145*x^7 + 229*x^6 + 58*x^5 – 360*x^4 + 70*x^3 – 515*x^2 + 1804*x – 1452 sage: M. T(2). charpoly(’x’). actor() (x – 3) * (x + 2)^2 * (x^4 – 7*x^3 + 19*x^2 – 23*x + 11) * (x^4 – 2*x^3 + 4*x^2 + 2*x + 11) sage: S = M. cuspidal_submodule() sage: S. T(2). matrix() [-2 0] [ 0 -2] sage: S. q_expansion_basis(10) [ q – 2*q^2 – q^3 + 2*q^4 + q^5 + 2*q^6 – 2*q^7 – 2*q^9 + O(q^10) ] 2. 13. Some More A dvanced Mathematics 47 Sage Tutorial, Release 5. 3 We can even compute spaces of modular symbols with character. sage: G = DirichletGroup(13) sage: e = G. 0^2 sage: M = ModularSymbols(e,2); M Modular Symbols space of dimension 4 and level 13, weight 2, character [zeta6], sign 0, over Cyclotomic Field of order 6 and degree 2 sage: M. T(2). charpoly(’x’). factor() (x – 2*zeta6 – 1) * (x – zeta6 – 2) * (x + zeta6 + 1)^2 sage: S = M. cuspidal_submodule(); S Modular Symbols subspace of dimension 2 of Modular Symbols space of dimension 4 and level 13, weight 2, character [zeta6], sign 0, over Cyclotomic Field of order 6 and degree 2 sage: S. T(2). charpoly(’x’). factor() (x + zeta6 + 1)^2 sage: S. q_expansion_basis(10) [ q + (-zeta6 – 1)*q^2 + (2*zeta6 – 2)*q^3 + zeta6*q^4 + (-2*zeta6 + 1)*q^5 + (-2*zeta6 + 4)*q^6 + (2*zeta6 – 1)*q^8 – zeta6*q^9 + O(q^10) ] Here is another example of how Sage can compute the action of Hecke operators on a space of modular forms. sage: T = ModularForms(Gamma0(11),2) sage: T Modular Forms space of dimension 2 for Congruence Subgroup Gamma0(11) of weight 2 over Rational Field sage: T. degree() 2 sage: T. level() 11 sage: T. group() Congruence Subgroup Gamma0(11) sage: T. dimension() 2 sage: T. cuspidal_subspace() Cuspidal subspace of dimension 1 of Modular Forms space of dimension 2 for Congruence Subgroup Gamma0(11) of weight 2 over Rational Field sage: T. isenstein_subspace() Eisenstein subspace of dimension 1 of Modular Forms space of dimension 2 for Congruence Subgroup Gamma0(11) of weight 2 over Rational Field sage: M = ModularSymbols(11); M Modular Symbols space of dimension 3 for Gamma_0(11) of weight 2 with sign 0 over Rational Field sage: M. weight() 2 sage: M. basis() ((1,0), (1,8), (1,9)) sage: M. sign() 0 Let Tp denote the usual Hecke operators (p prime). How do the Hecke operators T2 , T3 , T5 act on the space of modular symbols? sage: M. T(2). matrix() [ 3 0 -1] [ 0 -2 0] [ 0 0 -2] sage: M. T(3). matrix() [ 4 0 -1] 8 Chapter 2. A Guided Tour Sage Tutorial, Release 5. 3 [ 0 -1 0] [ 0 0 -1] sage: M. T(5). matrix() [ 6 0 -1] [ 0 1 0] [ 0 0 1] 2. 13. Some More Advanced Mathematics 49 Sage Tutorial, Release 5. 3 50 Chapter 2. A Guided Tour CHAPTER THREE THE INTERACTIVE SHELL In most of this tutorial, we assume you start the Sage interpreter using the sage command. This starts a customized version of the IPython shell, and imports many functions and classes, so they are ready to use from the command prompt. Further customization is possible by editing the $SAGE_ROOT/ipythonrc ? le. Upon starting Sage, you get output similar to the following: ———————————————————————| SAGE Version 3. 1. 1, Release Date: 2008-05-24 | | Type notebook() for the GUI, and license() for information. | ———————————————————————- sage: To quit Sage either press Ctrl-D or type quit or exit. sage: quit Exiting SAGE (CPU time 0m0. 00s, Wall time 0m0. 89s) The wall time is the time that elapsed on the clock hanging from your wall. This is relevant, since CPU time does not track time used by subprocesses like GAP or Singular. Avoid killing a Sage process with kill -9 from a terminal, since Sage might not kill child processes, e. g. , Maple processes, or cleanup temporary ? les f rom $HOME/. sage/tmp. ) 3. 1 Your Sage Session The session is the sequence of input and output from when you start Sage until you quit. Sage logs all Sage input, via IPython. In fact, if you’re using the interactive shell (not the notebook interface), then at any point you may type %history (or %hist) to get a listing of all input lines typed so far. You can type ? at the Sage prompt to ? nd out more about IPython, e. g. â€Å"IPython offers numbered prompts with input and output caching. All input is saved and can be retrieved as variables (besides the usual arrow key recall). The following GLOBAL variables always exist (so don’t overwrite them! )†: _: previous input (interactive shell and notebook) __: next previous input (interactive shell only) _oh : list of all inputs (interactive shell only) Here is an example: sage: factor(100) _1 = 2^2 * 5^2 sage: kronecker_symbol(3,5) 51 Sage Tutorial, Release 5. 3 _2 = -1 sage: %hist #This only works from the interacti ve shell, not the notebook. : factor(100) 2: kronecker_symbol(3,5) 3: %hist sage: _oh _4 = {1: 2^2 * 5^2, 2: -1} sage: _i1 _5 = ’factor(ZZ(100)) ’ sage: eval(_i1) _6 = 2^2 * 5^2 sage: %hist 1: factor(100) 2: kronecker_symbol(3,5) 3: %hist 4: _oh 5: _i1 6: eval(_i1) 7: %hist We omit the output numbering in the rest of this tutorial and the other Sage documentation. You can also store a list of input from session in a macro for that session. sage: E = EllipticCurve([1,2,3,4,5]) sage: M = ModularSymbols(37) sage: %hist 1: E = EllipticCurve([1,2,3,4,5]) 2: M = ModularSymbols(37) 3: %hist sage: %macro em 1-2 Macro ‘em‘ created. To execute, type its name (without quotes). sage: E Elliptic Curve defined by y^2 + x*y + 3*y = x^3 + 2*x^2 + 4*x + 5 over Rational Field sage: E = 5 sage: M = None sage: em Executing Macro sage: E Elliptic Curve defined by y^2 + x*y + 3*y = x^3 + 2*x^2 + 4*x + 5 over Rational Field When using the interactive shell, any UNIX shell command can be executed from Sage by prefacing it by an exclamation point !. For example, sage: ! ls auto example. sage glossary. tex t tmp tut. log tut. tex returns the listing of the current directory. The PATH has the Sage bin directory at the front, so if you run gp, gap, singular, maxima, etc. you get the versions included with Sage. sage: ! gp Reading GPRC: /etc/gprc Done. GP/PARI CALCULATOR Version 2. 2. 11 (alpha) i686 running linux (ix86/GMP-4. 1. 4 kernel) 32-bit version 52 Chapter 3. The Interactive Shell Sage Tutorial, Release 5. 3 sage: ! singular SINGULAR A Computer Algebra System for Polynomial Computations 0< by: G. -M. Greuel, G. Pfister, H . Schoenemann FB Mathematik der Universitaet, D-67653 Kaiserslautern October 2005 / / Development version 3-0-1 3. 2 Logging Input and Output Logging your Sage session is not the same as saving it (see Saving and Loading Complete Sessions for that). To log input (and optionally output) use the logstart command. Type logstart? for more details. You can use this command to log all input you type, all output, and even play back that input in a future session (by simply reloading the log ? le). [email  protected]:~$ sage ———————————————————————| SAGE Version 3. 0. 2, Release Date: 2008-05-24 | | Type notebook() for the GUI, and license() for information. | ———————————————————————sage: logstart setup Activating auto-logging. Current session state plus future input saved. Filename : setup Mode : backup Output logging : False Timestamping : False State : active sage: E = EllipticCurve([1,2,3,4,5]). minimal_model() sage: F = QQ^3 sage: x,y = QQ[’x,y’]. gens() sage: G = E. gens() sage: Exiting SAGE (CPU time 0m0. 61s, Wall time 0m50. 39s). [email  protected]:~$ sage ———————————————————————| SAGE Version 3. 0. 2, Release Date: 2008-05-24 | | Type notebook() for the GUI, and license() for information. | ———————————————————————sage: load â€Å"setup† Loading log file one line at a time Finished replaying log file sage: E Elliptic Curve defined by y^2 + x*y = x^3 – x^2 + 4*x + 3 over Rational Field sage: x*y x*y sage: G [(2 : 3 : 1)] If you use Sage in the Linux KDE terminal konsole then you can save your session as follows: after starting Sage in konsole, select â€Å"settings†, then â€Å"history †, then â€Å"set unlimited†. When you are ready to save your session, select â€Å"edit† then â€Å"save history as † and type in a name to save the text of your session to your computer. After saving this ? le, you could then load it into an editor, such as xemacs, and print it. 3. 2. Logging Input and Output 53 Sage Tutorial, Release 5. 3 3. Paste Ignores Prompts Suppose you are reading a session of Sage or Python computations and want to copy them into Sage. But there are annoying >>> or sage: prompts to worry about. In fact, you can copy and paste an example, including the prompts if you want, into Sage. In other words, by de fault the Sage parser strips any leading >>> or sage: prompt before passing it to Python. For example, sage: 2^10 1024 sage: sage: sage: 2^10 1024 sage: >>> 2^10 1024 3. 4 Timing Commands If you place the %time command at the beginning of an input line, the time the command takes to run will be displayed after the output. For example, we can compare the running time for a certain exponentiation operation in several ways. The timings below will probably be much different on your computer, or even between different versions of Sage. First, native Python: sage: %time a = int(1938)^int(99484) CPU times: user 0. 66 s, sys: 0. 00 s, total: 0. 66 s Wall time: 0. 66 This means that 0. 66 seconds total were taken, and the â€Å"Wall time†, i. e. , the amount of time that elapsed on your wall clock, is also 0. 66 seconds. If your computer is heavily loaded with other programs, the wall time may be much larger than the CPU time. Next we time exponentiation using the native Sage Integer type, which is implemented (in Cython) using the GMP library: sage: %time a = 1938^99484 CPU times: user 0. 04 s, sys: 0. 00 s, total: 0. 04 s Wall time: 0. 04 Using the PARI C-library interface: sage: %time a = pari(1938)^pari(99484) CPU times: user 0. 05 s, sys: 0. 00 s, total: 0. 05 s Wall time: 0. 05 GMP is better, but only slightly (as expected, since the version of PARI built for Sage uses GMP for integer arithmetic). You can also time a block of commands using the cputime command, as illustrated below: sage: sage: sage: sage: sage: 0. 4 t = cputime() a = int(1938)^int(99484) b = 1938^99484 c = pari(1938)^pari(99484) cputime(t) # somewhat random output sage: cputime? Return the time in CPU second since SAGE started, or with optional argument t, return the time since time t. 54 Chapter 3. The Interactive Shell Sage Tutorial, Release 5. 3 INPUT: t — (optional) float, time in CPU seconds OUTPUT: float — time i n CPU seconds The walltime command behaves just like the cputime command, except that it measures wall time. We can also compute the above power in some of the computer algebra systems that Sage includes. In each case we execute a trivial command in the system, in order to start up the server for that program. The most relevant time is the wall time. However, if there is a signi? cant difference between the wall time and the CPU time then this may indicate a performance issue worth looking into. sage: time 1938^99484; CPU times: user 0. 01 s, sys: 0. 00 s, total: Wall time: 0. 01 sage: gp(0) 0 sage: time g = gp(’1938^99484’) CPU times: user 0. 00 s, sys: 0. 00 s, total: Wall time: 0. 04 sage: maxima(0) 0 sage: time g = maxima(’1938^99484’) CPU times: user 0. 00 s, sys: 0. 00 s, total: Wall time: 0. 0 sage: kash(0) 0 sage: time g = kash(’1938^99484’) CPU times: user 0. 00 s, sys: 0. 00 s, total: Wall time: 0. 04 sage: mathematica(0) 0 sage: time g = mathematica(’1938^99484’) CPU times: user 0. 00 s, sys: 0. 00 s, total: Wall time: 0. 03 sage: maple(0) 0 sage: time g = maple(’1938^99484’) CPU times: user 0. 00 s, sys: 0. 00 s, total: Wall time: 0. 11 sage: gap(0) 0 sage: time g = gap. eval(’1938^99484;;’) CPU times: user 0. 00 s, sys: 0. 00 s, total: Wall time: 1. 02 0. 01 s 0. 00 s 0. 00 s 0. 00 s 0. 00 s 0. 00 s 0. 00 s Note that GAP and Maxima are the slowest in this test (this was run on the machine sage. ath. washington. edu). Because of the pexpect interface overhead, it is perhaps unfair to compare these to Sage, which is the fastest. 3. 5 Other IPython tricks As noted above, Sage uses IPython as its front end, and so you can use any of IPython’s commands and features. You can read the full IPython documentation. Meanwhile, here are some fun tricks – these are called â€Å"Magic commands† in IPython: †¢ You can use %bg to run a command in the background, and then use jobs to access the results, as follows. 3. 5. Other IPython tricks 55 Sage Tutorial, Release 5. 3 The comments not tested are here because the %bg syntax doesn’t work well with S age’s automatic testing facility. If you type this in yourself, it should work as written. This is of course most useful with commands which take a while to complete. ) sage: def quick(m): return 2*m sage: %bg quick(20) # not tested Starting job # 0 in a separate thread. sage: jobs. status() # not tested Completed jobs: 0 : quick(20) sage: jobs[0]. result # the actual answer, not tested 40 Note that jobs run in the background don’t use the Sage preparser – see The Pre-Parser: Differences between Sage and Python for more information. One (perhaps awkward) way to get around this would be to run sage: %bg eval(preparse(’quick(20)’)) # not tested It is safer and easier, though, to just use %bg on commands which don’t require the preparser. †¢ You can use %edit (or %ed or ed) to open an editor, if you want to type in some complex code. Before you start Sage, make sure that the EDITOR environment variable is set to your favorite editor (by putting export EDITOR=/usr/bin/emacs or export EDITOR=/usr/bin/vim or something similar in the appropriate place, like a . profile ? le). From the Sage prompt, executing %edit will open up the named editor. Then within the editor you can de? e a function: def some_function(n): return n**2 + 3*n + 2 Save and quit from the editor. For the rest of your Sage session, you can then use some_function. If you want to modify it, type %edit some_function from the Sage prompt. †¢ If you have a computation and you want to modify its output for another use, perform the computation and type %rep: this will place the output from the previous command at the Sage prompt, ready for you to edit it. sage: f(x) = cos(x) sage: f(x). derivative(x) -sin(x) At this point, if you type %rep at the Sage prompt, you will get a new Sage prompt, followed by -sin(x), with the cursor at the end of the line. For more, type %quickref to get a quick reference guide to IPython. As of this writing (April 2011), Sage uses version 0. 9. 1 of IPython, and the documentation for its magic commands is available online. 3. 6 Errors and Exceptions When something goes wrong, you will usually see a Python â€Å"exception†. Python even tries to suggest what raised the exception. Often you see the name of the exception, e. g. , NameError or ValueError (see the Python Reference Manual [Py] for a complete list of exceptions). For example, sage: 3_2 ———————————————————–File â€Å"†, line 1 ZZ(3)_2 ^ SyntaxError: invalid syntax 6 Chapter 3. The Interactive Shell Sage Tutorial, Release 5. 3 sage: EllipticCurve([0,infinity]) ———————————————— Ã¢â‚¬â€Ã¢â‚¬â€Ã¢â‚¬â€œTraceback (most recent call last): TypeError: Unable to coerce Infinity () to Rational The interactive debugger is sometimes useful for understanding what went wrong. You can toggle it on or off using %pdb (the default is off). The prompt ipdb> appears if an exception is raised and the debugger is on. From within the debugger, you can print the state of any local variable, and move up and down the execution stack. For example, sage: %pdb Automatic pdb calling has been turned ON sage: EllipticCurve([1,infinity]) ————————————————————————– Traceback (most recent call last) ipdb> For a list of commands in the debugger, type ? at the ipdb> prompt: ipdb> ? Documented commands (type help ): ======================================== EOF break commands debug h a bt condition disable help alias c cont down ignore args cl continue enable j b clear d exit jump whatis where Miscellaneous help topics: ========================== exec pdb Undocumented commands: ====================== retval rv list n next p pdef pdoc pinfo pp q quit r return s step tbreak u unalias up w Type Ctrl-D or quit to return to Sage. 3. 7 Reverse Search and Tab Completion Reverse search: Type the beginning of a command, then Ctrl-p (or just hit the up arrow key) t o go back to each line you have entered that begins in that way. This works even if you completely exit Sage and restart later. You can also do a reverse search through the history using Ctrl-r. All these features use the readline package, which is available on most ? avors of Linux. To illustrate tab completion, ? st create the three dimensional vector space V = Q3 as follows: sage: V = VectorSpace(QQ,3) sage: V Vector space of dimension 3 over Rational Field You can also use the following more concise notation: 3. 7. Reverse Search and Tab Completion 57 Sage Tutorial, Release 5. 3 sage: V = QQ^3 Then it is easy to list all member functions for V using tab completion. Just type V. , then type the [tab key] key on your keyboard: sage: V. [tab key] V. _VectorSpace_generic__base_field V. ambient_space V. base_field V. base_ring V. basis V. coordinates V. zero_vector If you type the ? st few letters of a function, then [tab key], you get only functions that begin as indicated. sage: V. i[tab key] V. is_ambient V. is_dense V. is_full V. is_sparse If you wonder what a particular function does, e. g. , the coordinates function, type V. coordinates? for help or V. coordinates for the source code, as explained in the next section. 3. 8 Integrated Help System Sage features an integrated help facility. Type a function name followed by ? for the documentation for that function. sage: V = QQ^3 sage: V. coordinates? Type: instancemethod Base Class: String Form: Namespace: Interactive File: /home/was/s/local/lib/python2. /site-packages/sage/modules/f ree_module. py Definition: V. coordinates(self, v) Docstring: Write v in terms of the basis for self. Returns a list c such that if B is the basis for self, then sum c_i B_i = v. If v is not in self, raises an ArithmeticError exception. EXAMPLES: sage: M = FreeModule(IntegerRing(), 2); M0,M1=M. gens() sage: W = M. submodule([M0 + M1, M0 – 2*M1]) sage: W. coordinates(2*M0-M1) [2, -1] As shown above, the output tells you t he type of the object, the ? le in which it is de? ned, and a useful description of the function with examples that you can paste into your current session. Almost all of these examples are regularly automatically tested to make sure they work and behave exactly as claimed. 58 Chapter 3. The Interactive Shell Sage Tutorial, Release 5. 3 Another feature that is very much in the spirit of the open source nature of Sage is that if f is a Python function, then typing f displays the source code that de? nes f. For example, sage: V = QQ^3 sage: V. coordinates Type: instancemethod Source: def coordinates(self, v): â€Å"†Ã¢â‚¬  Write $v$ in terms of the basis for self. â€Å"†Ã¢â‚¬  return self. coordinate_vector(v). list() This tells us that all the coordinates function does is call the coordinate_vector function and change the result into a list. What does the coordinate_vector function do? sage: V = QQ^3 sage: V. coordinate_vector def coordinate_vector(self, v): return self. ambient_vector_space()(v) The coordinate_vector function coerces its input into the ambient space, which has the effect of computing the vector of coef? cients of v in terms of V . The space V is already ambient since it’s just Q3 . There is also a coordinate_vector function for subspaces, and it’s different. We create a subspace and see: sage: V = QQ^3; W = V. span_of_basis([V. 0, V. 1]) sage: W. coordinate_vector def coordinate_vector(self, v): â€Å"†Ã¢â‚¬  â€Å"†Ã¢â‚¬  # First find the coordinates of v wrt echelon basis. w = self. echelon_coordinate_vector(v) # Next use transformation matrix from echelon basis to # user basis. T = self. echelon_to_user_matrix() return T. linear_combination_of_rows(w) (If you think the implementation is inef? cient, please sign up to help optimize linear algebra. ) You may also type help(command_name) or help(class) for a manpage-like help ? le about a given class. age: help(VectorSpace) Help on class VectorSpace class VectorSpace(__builtin__. object) | Create a Vector Space. | | To create an ambient space over a field with given dimension | using the calling syntax : : When you type q to exit the help system, your session appears just as it was. The help listing does not clutter up your session, unlike the output of function_name? som etimes does. It’s particularly helpful to type 3. 8. Integrated Help System 59 Sage Tutorial, Release 5. 3 help(module_name). For example, vector spaces are de? ned in sage. modules. free_module, so type help(sage. modules. ree_module) for documentation about that whole module. When viewing documentation using help, you can search by typing / and in reverse by typing ?. 3. 9 Saving and Loading Individual Objects Suppose you compute a matrix or worse, a complicated space of modular symbols, and would like to save it for later use. What can you do? There are several approaches that computer algebra systems take to saving individual objects. 1. Save your Game: Only support saving and loading of complete sessions (e. g. , GAP, Magma). 2. Uni? ed Input/Output: Make every object print in a way that can be read back in (GP/PARI). 3. Eval: Make it easy to evaluate arbitrary code in the interpreter (e. g. , Singular, PARI). Because Sage uses Python, it takes a different approach, which is that every object can be serialized, i. e. , turned into a string from which that object can be recovered. This is in spirit similar to the uni? ed I/O approach of PARI, except it doesn’t have the drawback that objects print to screen in too complicated of a way. Also, support for saving and loading is (in most cases) completely automatic, requiring no extra programming; it’s simply a feature of Python that was designed into the language from the ground up. Almost all Sage objects x can be saved in compressed form to disk using save(x, filename) (or in many cases x. save(filename)). To load the object back in, use load(filename). sage: sage: [ 15 [ 42 [ 69 sage: A = MatrixSpace(QQ,3)(range(9))^2 A 18 21] 54 66] 90 111] save(A, ’A’) You should now quit Sage and restart. Then you can get A back: sage: sage: [ 15 [ 42 [ 69 A = load(’A’) A 18 21] 54 66] 90 111] You can do the same with more complicated objects, e. g. , elliptic curves. All data about the object that is cached is stored with the object. For example, sage: sage: sage: sage: E = EllipticCurve(’11a’) v = E. nlist(100000) save(E, ’E’) quit # takes a while The saved version of E takes 153 kilobytes, since it stores the ? rst 100000 an with it. ~/tmp$ ls -l E. sobj -rw-r–r– 1 was was 153500 2006-01-28 19:23 E. sobj ~/tmp$ sage [ ] sage: E = load(’E’) sage: v = E. anlist(100000) # instant! (In Pytho n, saving and loading is accomplished using the cPickle module. In particular, a Sage object x can be saved via cPickle. dumps(x, 2). Note the 2! ) 60 Chapter 3. The Interactive Shell Sage Tutorial, Release 5. 3 Sage cannot save and load individual objects created in some other computer algebra systems, e. . , GAP, Singular, Maxima, etc. They reload in a state marked â€Å"invalid†. In GAP, though many objects print in a form from which they can be reconstructed, many don’t, so reconstructing from their print representation is purposely not allowed. sage: a = gap(2) sage: a. save(’a’) sage: load(’a’) Traceback (most recent call last): ValueError: The session in which this object was defined is no longer running. GP/PARI objects can be saved and loaded since their print representation is enough to reconstruct them. sage: a = gp(2) sage: a. save(’a’) sage: load(’a’) 2 Saved objects can be re-loaded later on computers with different architectures or operating systems, e. g. , you could save a huge matrix on 32-bit OS X and reload it on 64-bit Linux, ? nd the echelon form, then move it back. Also, in many cases you can even load objects into versions of Sage that are different than the versions they were saved in, as long as the code for that object isn’t too different. All the attributes of the objects are saved, along with the class (but not source code) that de? nes the object. If that class no longer exists in a new version of Sage, then the object can’t be reloaded in that newer version. But you could load it in an old version, get the objects dictionary (with x. __dict__), and save the dictionary, and load that into the newer version. 3. 9. 1 Saving as Text You can also save the ASCII text representation of objects to a plain text ? le by simply opening a ? le in write mode and writing the string representation of the object (you can write many objects this way as well). When you’re done writing objects, close the ? le. sage: sage: sage: sage: sage: R. = PolynomialRing(QQ,2) f = (x+y)^7 o = open(’file. txt’,’w’) o. write(str(f)) o. close() 3. 10 Saving and Loading Complete Sessions Sage has very ? xible support for saving and loading complete sessions. The command save_session(sessionname) saves all the variables you’ve de? ned in the current session as a dictionary in the given sessionname. (In the rare case when a variable does not support saving, it is simply not saved to the dictionary. ) The resulting ? le is an . sobj ? le and can be loaded just like any other object that was saved. When you load the objects saved in a session, you get a dictionary whose keys are the variables names and whose values are the objects. You can use the load_session(sessionname) command to load the variables de? ed in sessionname into the current session. Note that this does not wipe out variables you’ve already de? ned in your current session; instead, the two sessions are merged. First we start Sage and de? ne some variables. 3. 10. Saving and Loading Complete Sessions 61 Sage Tutorial, Release 5. 3 sage: sage: sage: sage: _4 = E = EllipticCurve(’11a’) M = ModularSymbols(37) a = 389 t = M. T(2003). matrix(); t. charpoly(). factor() (x – 2004) * (x – 12)^2 * (x + 54)^2 Next we save our session, which saves each of the above variables into a ? le. Then we view the ? le, which is about 3K in size. age: save_session(’misc’) Saving a Saving M Saving t Saving E sage: quit [ email  protected]:~/tmp$ ls -l misc. sobj -rw-r–r– 1 was was 2979 2006-01-28 19:47 misc. sobj Finally we restart Sage, de? ne an extra variable, and load our saved session. sage: b = 19 sage: load_session(’misc’) Loading a Loading M Loading E Loading t Each saved variable is again available. Moreover, the variable b was not overwritten. sage: M Full Modular Symbols space for Gamma_0(37) of weight 2 with sign 0 and dimension 5 over Rational Field sage: E Elliptic Curve defined by y^2 + y = x^3 – x^2 – 10*x – 20 over Rational Field sage: b 19 sage: a 389 3. 1 The Notebook Interface The Sage notebook is run by typing sage: notebook() on the command line of Sage. This starts the Sage notebook and opens your default web browser to view it. The server’s state ? les are stored in $HOME/. sage/sage\_notebook. Other options include: sage: notebook(â€Å"directory†) which starts a new notebook server using ? les in the given dir ectory, instead of the default directory $HOME/. sage/sage_notebook. This can be useful if you want to have a collection of worksheets associated with a speci? c project, or run several separate notebook servers at the same time. When you start the notebook, it ? st creates the following ? les in $HOME/. sage/sage_notebook: 62 Chapter 3. The Interactive Shell Sage Tutorial, Release 5. 3 nb. sobj objects/ worksheets/ (the notebook SAGE object file) (a directory containing SAGE objects) (a directory containing SAGE worksheets). After creating the above ? les, the notebook starts a web server. A â€Å"notebook† is a collection of user accounts, each of which can have any number of worksheets. When you create a new worksheet, the data that de? nes it is stored in the worksheets/username/number directories. In each such directory there is a plain text ? le worksheet. xt – if anything ever happens to your worksheets, or Sage, or whatever, that human-readable ? le contains ev erything needed to reconstruct your worksheet. From within Sage, type notebook? for much more about how to start a notebook server. The following diagram illustrates the architecture of the Sage Notebook: ———————| | | | | firefox/safari | | | | javascript | | program | | | | | ———————| ^ | AJAX | V | ———————| | | sage | | web | ————> | server | pexpect | | | | ———————- SAGE process 1 SAGE process 2 SAGE process 3 (Python processes) For help on a Sage command, cmd, in the notebook browser box, type cmd? ). and now hit (not For help on the keyboard shortcuts available in the notebook interface, click on the Help link. 3. 11. The Notebook Interface 63 Sage Tutorial, Release 5. 3 64 Chapter 3. The Interactive Shell CHAPTER FOUR INTERFACES A central facet of Sage is that it supports computation with objects in many different computer algebra systems â€Å"under one roof† using a common interface and clean programming language. The console and interact methods of an interface do very different things. For example, using GAP as an example: 1. gap. onsole(): This opens the GAP console – it transfers control to GAP. Here Sage is serving as nothing more than a convenient program launcher, similar to the Linux bash shell. 2. gap. interact(): This is a convenient way to interact with a running GAP instance that may be â€Å"full of† Sage objects. You can import Sage objects into this GAP session (even from the interactive interface), etc. 4. 1 GP/PARI PARI is a compact, very mature, highly optimized C program whose primary focus is number theory. There are two very distinct interfaces that you can use in Sage: †¢ gp – the â€Å"G o P ARI† interpreter, and †¢ pari – the PARI C libraxry. For example, the following are two ways of doing the same thing. They look identical, but the output is actually different, and what happens behind the scenes is drastically different. sage: gp(’znprimroot(10007)’) Mod(5, 10007) sage: pari(’znprimroot(10007)’) Mod(5, 10007) In the ? rst case, a separate copy of the GP interpreter is started as a server, and the string ’znprimroot(10007)’ is sent to it, evaluated by GP, and the result is assigned to a variable in GP (which takes up space in the child GP processes memory that won’t be freed). Then the value of that variable is displayed. In the second case, no separate program is started, and the string ’znprimroot(10007)’ is evaluated by a certain PARI C library function. The result is stored in a piece of memory on the Python heap, which is freed when the variable is no longer referenced. The objects have different types: sage: type(gp(’znprimroot(10007)’)) sage: type(pari(’znprimroot(10007)’)) So which should you use? It depends on what you’re doing. The GP interface can do absolutely anything you could do in the usual GP/PARI command line program, since it is running that program. In particular, you can load complicated PARI programs and run them. In contrast, the PARI interface (via the C library) is much more restrictive. First, not all 65 Sage Tutorial, Release 5. 3 member functions have been implemented. Second, a lot of code, e. g. , involving numerical integration, won’t work via the PARI interface. That said, the PARI interface can be signi? cantly faster and more robust than the GP one. (If the GP interface runs out of memory evaluating a given input line, it will silently and automatically double the stack size and retry that input line. Thus your computation won’t crash if you didn’t correctly anticipate the amount of memory that would be needed. This is a nice trick the usual GP interpreter doesn’t seem to provide. Regarding the PARI C library interface, it immediately copies each created object off of the PARI stack, hence the stack never grows. However, each object must not exceed 100MB in size, or the stack will over? ow when the object is being created. This extra copying does impose a slight performance penalty. ) In summary, Sage uses the PARI C library to provide functionality similar to that provided by the GP/PARI interpreter, except with different sophisticated memory management and the Python programming language. First we create a PARI list from a Python list. age: v = pari([1,2,3,4,5]) sage: v [1, 2, 3, 4, 5] sage: type(v) Every PARI object is of type py_pari. gen. The PARI type of the underlying object can be obtained using the type member function. sage: v. type() ’t_VEC’ In PARI, to create an elliptic curve we enter ellinit([1,2,3,4,5]). Sage is similar, except that ellinit is a method th at can be called on any PARI object, e. g. , our t\_VEC v. sage: e = v. ellinit() sage: e. type() ’t_VEC’ sage: pari(e)[:13] [1, 2, 3, 4, 5, 9, 11, 29, 35, -183, -3429, -10351, 6128487/10351] Now that we have an elliptic curve object, we can compute some things about it. age: e. elltors() [1, [], []] sage: e. ellglobalred() [10351, [1, -1, 0, -1], 1] sage: f = e. ellchangecurve([1,-1,0,-1]) sage: f[:5] [1, -1, 0, 4, 3] 4. 2 GAP Sage comes with GAP 4. 4. 10 for computational discrete mathematics, especially group theory. Here’s an example of GAP’s IdGroup function, which uses the optional small groups database that has to be installed separately, as explained below. sage: G = gap(’Group((1,2,3)(4,5), (3,4))’) sage: G Group( [ (1,2,3)(4,5), (3,4) ] ) sage: G. Center() Group( () ) 66 Chapter 4. Interfaces Sage Tutorial, Release 5. 3 sage: G. IdGroup() [ 120, 34 ] sage: G. Order() 120 # requires optional database_gap package We can do the same computation in Sage without explicitly invoking the GAP interface as follows: sage: G = PermutationGroup([[(1,2,3),(4,5)],[(3,4)]]) sage: G. center() Subgroup of (Permutation Group with generators [(3,4), (1,2,3)(4,5)]) generated by [()] sage: G. group_id() # requires optional database_gap package [120, 34] sage: n = G. order(); n 120 (For some GAP functionality, you should install two optional Sage packages. Type sage -optional for a list and choose the one that looks like gap\_packages-x. . z, then type sage -i gap\_packages-x. y. z. Do the same for database\_gap-x. y. z. Some non-GPL’d GAP packages may be installed by downloading them from the GAP web site [GAPkg], and unpacking them in $SAGE_ROOT/local/lib/gap-4. 4. 10/pkg. ) 4. 3 Singular Singular provides a massive and mature library for Grobner bases, multivariate polynomial gcds, bases of RiemannRoch spaces of a plane curve, and factorizations, among other things. We illustrate multivariate polynomial factorization using the Sage interface to Singular (do not type the ): sage: R1 = singular. ing(0, ’(x,y)’, ’dp’) sage: R1 // characteristic : 0 // number of vars : 2 // block 1 : ordering dp // : names x y // block 2 : ordering C sage: f = singular(’9*y^8 – 9*x^2*y^7 – 18*x^3*y^6 – 18*x^5*y^6 + 9*x^6*y^4 + 18*x^7*y^5 + 36*x^8*y^4 + 9*x^10*y^4 – 18*x^11*y^2 – 9*x^12*y^3 – 18*x^13*y^2 + 9*x^16’) Now that we have de? ned f , we print it and factor. sage: f 9*x^16-18*x^13*y^2-9*x^12*y^3+9*x^10*y^4-18*x^11*y^2+36*x^8*y^4+18*x^7*y^5-18*x^5*y^6+9*x^6*y^4-18*x^ sage: f. parent() Singular sage: F = f. factorize(); F [1]: _[1]=9 _[2]=x^6-2*x^3*y^2-x^2*y^3+y^4 _[3]=-x^5+y^2 [2]: 1,1,2 sage: F[1][2] x^6-2*x^3*y^2-x^2*y^3+y^4 As with the GAP example in GAP, we can compute the above factorization without explicitly using the Singular interface (however, behind the scenes Sage uses the Singular interface for the actual computation). Do not type the : 4. 3. Singular 67 Sage Tutorial, Release 5. 3 sage: sage: sage: (9) * x, y = QQ[’x, y’]. gens() f = 9*y^8 – 9*x^2*y^7 – 18*x^3*y^6 – 18*x^5*y^6 + 9*x^6*y^4 + 18*x^7*y^5 + 36*x^8*y^4 + 9*x^10*y^4 – 18*x^11*y^2 – 9*x^12*y^3 – 18*x^13*y^2 + 9*x^16 factor(f) (-x^5 + y^2)^2 * (x^6 – 2*x^3*y^2 – x^2*y^3 + y^4) 4. 4 Maxima Maxima is included with Sage, as well as a Lisp implementation. The gnuplot package (which Maxima uses by default for plotting) is distributed as a Sage optional package. Among other things, Maxima does symbolic manipulation. Maxima can integrate and differentiate functions symbolically, solve 1st order ODEs, most linear 2nd order ODEs, and has implemented the Laplace tr

Saturday, September 28, 2019

Freedom Essay Example | Topics and Well Written Essays - 500 words

Freedom - Essay Example (Merriam-Webster English Dictionary, 2006-2007 Edition). It is evident that one of the necessary conditions of freedom is the absence of oppression by an external actor, whether it be another individual, group of individuals or a government or society. One is free when they are not restrained and regulated by the mandates made by others than themselves. 18th Century political philosopher contributed to this conception of freedom in his Second Treatise of Civil Government. Locke defined freedom as "that all things equal and independent, no one ought to harm another in his Life, Health, Liberty or Possessions." (Locke, 318). In this definition, Locke concluded that freedom consisted of an individual's rights to their life and health in addition with their freedom to pursue happiness that includes protection of private property and the liberty to pursue their own living. While Locke wrote this with the intent of establishing the foundations of a just government and civil society, the very meaning of freedom must first be defined and justifie d in order to set the framework for any form of civil society.

Friday, September 27, 2019

Is there a Messianic Secret in Mark Essay Example | Topics and Well Written Essays - 750 words

Is there a Messianic Secret in Mark - Essay Example This miracle is when Jesus heals the twelve year old girl. Everyone thought that this girl was dead, but she arose for Jesus. This miracle could not have been staged because Jesus did not know the man that beseeched him. Jairus was a ruler of a local synagogue.1 This example and other examples show Jesus’ willingness to help people, but his reluctance to have publicised his actions R. Alan Cole suggests Mark wrote of the miracles to show Jesus’ compassion and his authority, but Mark did not give a clear theological reason like the other gospels.2 These miracles could be proof that Jesus was the Messiah. Mark was not secretive about the miracles, but very forthcoming. In the first chapter of Mark, Jesus rebukes a demon and silences him. The silencing of the demons shows that there was information that Jesus did not want his followers to know.3 These actions can be attributed to Jesus, if Mark related the story correctly. Jesus did not want whatever the demon had to say spoken. The power over this demon can prove that Jesus was Messiah. It could be said that the demon was going to expose Jesus, so Jesus shut him up. Another possibility is the demon did say something damning, so Mark related fiction. The latter is doubtful, because if Mark wanted to shroud this incident in secrecy he could have omitted the whole passage. Throughout the gospels, not only Mark, Jesus constantly commands the disciples to remain quiet about his miracles and teachings. Some scholars believe this reason for Jesus’ command to remain silence was because Jesus was the Messiah.4 This theory follows that there was a Messianic Secret, but was it Jesus’ or Mark’s? Why would Jesus not want followers to know he was the Messiah? One preacher explained it this way, by commanding his disciples to stay silent, Jesus was saving the glory and praise for God the Father. Unlike other false prophets who say â€Å"look at me†, Jesus wanted people to worship

Thursday, September 26, 2019

Understanding IT security and its impact to organizations Research Paper

Understanding IT security and its impact to organizations - Research Paper Example This research aims to evaluate and present Information Technology Security before the onset of mandatory regulatory compliance is considered a feature that is nice to have amongst companies. One of the primary considerations of the luck luster implementation of Information Technology Security is the cost associated in setting up even the most basic IT security configuration, the cost of ownership including its maintenance and management. However, the growing sophistication of crimes related to information obtained from records stored in computers or Information Technology Infrastructure in general elicited a second look from stakeholders. Crimes such as identity theft and the funneling of large amount of money from one account to another have made Information Technology Security not only a cause of concern but rather the primary focus of congressional inquiries. The staggering amount of money involved may have caused the collapse of some companies if not the IT security threat have b ecome the catalyst that started its demise. The cost of building the records of the company after a viral attack that deleted its entire archive is nothing compared to the losses that could set in if historical records of payments are not properly reconstructed. The cost of actual damages to clients that have become victims of identity theft because of negligent practices of safe keeping of records of a company’s clientele may include civil liabilities that can ran up to hundreds of millions and billions of dollars if put together. Information Technology Security Systems has been considered at the onset as a means to catch people with nefarious intent after they have committed the felonious act. It should be noted that the crime has already been committed in this instance. However, an in-depth study of this discipline with the implementation of a good Information Security Management System can be used to catch on the act, discourage and prevent Information Technology related crimes. The implementation of established frameworks of Information Security Management Systems combined with technology can be considered as a potent means of protecting organizations against white collar criminals. The potency or effectiveness of these Information Security Management System frameworks was even recognized by the United States Congress as a testament to its effectiveness. The frameworks have considered the employment of human assets, technology and organizational framework through the implementation of policies and procedu res to fight any attempts to circumvent the

Wednesday, September 25, 2019

It is Practitioner Journal Article Essay Example | Topics and Well Written Essays - 1000 words - 1

It is Practitioner Journal Article - Essay Example Young children transform materials during play, observe and comment on the results. Pre-school teachers can make preschoolers have a strong desire to experiment and learn more about maths. They can offer developmentally suitable resources and opportunities to help preschoolers appreciate maths. The Common Core State Standards for Mathematics helps kindergarten kids describe shapes and space as well as represent, relate and operate whole numbers in a set of objects. Preschool teachers have many chances of helping children develop their understanding of shapes and space. According to Hannibal (1999), pre-school maths helps children make sense of the world around them. It further helps them to reason and solve problems. In preschool, shapes support teaching and learning if used effectively by the teachers. This article endeavors to shed light on how shapes can be used to teach preschool children mathematics. To enable the children learn teachers use various strategies. I read information about shapes to children and asked the child to read along with me. Reading about shapes to children helps the teachers to know how much the child knows about shapes (Sarama & Clements, 2009). Through reading about shapes to children, they can recognize and name shapes such as square, triangle, circle or a rectangle. The child knew the rectangle, the triangle, the square and the circle. However, the child seemed not to know the shape of a diamond and the oval. The child asked, â€Å"How does a diamond look like†? I responded â€Å"a diamond has six sides†. The child asked again, â€Å"are all the sides of a diamond equal?† I responded â€Å"you can choose to have them equal or unequal†. Then the child asked â€Å"Is oval the shape of an egg?† I replied â€Å"Excellent! It looks like an egg.† The child was able to characterize the shapes by their properties. Further, the child was very amused at the realization that shapes could be associated with things they interact with on

Tuesday, September 24, 2019

Appeal Process Article Example | Topics and Well Written Essays - 250 words

Appeal Process - Article Example advance infrequently challenges the choice of the jury, yet rather challenges any legitimate blunders that the judge or the indictment may have made throughout the trial. Any deciding that the judge made throughout the preparatory hearing, throughout pretrial movements and throughout the trial itself might be offered if the litigant accepts the decision was in failure. For instance, if your legal advisor made a pretrial movement testing the legitimateness of the pursuit of your auto and the judge decided that the police did not require an inquiry warrant, that controlling could be requested basing on the fact that it permitted proof to be seen by the jury that might not have generally seen. One’s attorney will have a lot of time to set up the formal offer, yet in most states one has a restricted time to publish the expectation to bid the conviction or sentence. In a few states, the appealing criminal His notice of offer will need to incorporate the precise issue or issues whereupon you are basing ones claim. Numerous requests have been rejected by higher courts essentially in luminosity of the verity that the litigant held up excessively long to raise the issue. When you claim your case, the investigative court will accept the record of the criminal trial and all decisions paving the way to the trial. Your lawyer will record a composed short sketching out why you accept your conviction was influenced by legitimate mistake. The arraignment in like manner will document a composed concise telling the redrafting court why it accepts the decision was lawful and fitting. Ordinarily, after the indictment documents its short, the appealing party can document a catch up concise in answer. Despite the fact that it does happen, the lawyer who took care of your criminal trial will presumably not handle your bid. Advances are normally took care of by legal counselors who have experience with the claims process and working with higher courts. Despite the fact that the

Monday, September 23, 2019

The other civil war Assignment Example | Topics and Well Written Essays - 500 words

The other civil war - Assignment Example This was especially so during economic crisis such as that of 1837, 1857 and 1873. The government and the courts often acted in favor of merchants, businessmen, speculators and capitalists at the expense of workers especially women and blacks thus they continued suffering. This is evidenced by the failure of Anti-Renter movement in 1839, the Dorr rebellion of 1841 for electoral reforms, and flour riots of 1837. In 1850s, money and profit had taken center stage but all that was reported were slavery issues. During the civil war, national issues took center stage over class issues although it was clear that a social revolution was in the offing due to increased strikes. The Morrill tariff, Homestead Act and contract labor law all served to benefit businessmen with cheap labor and high prices for products. After the war, national federations of unions were formed but concentrated on political issues. Examples were the First International and Workmen’s party urging for a socialist republic. Blacks also formed their own unions. However, the federal troops stopped such efforts by killing and jailing many workers. In the end the working class was unable to overthrow the wealthy and ruling class. The article was very helpful in understanding class struggles in the society before and after the civil war and how such struggles were overtaken by slavery, race issues and the civil war itself. These issues are often given importance over class struggles. A good example of class struggle was that of sheriffs and tenants leading to rent uprisings in 1830s and 1840s. Leaders of such Anti-Rent movements were silenced by life imprisonment. The struggle was between the rich and poor whites hence issues of slavery and race did not materialize yet they are the ones mostly written about in history books. Zinn also attributes racial and religious animosity to class struggles. He explains the hatred for blacks,

Sunday, September 22, 2019

Commentator on the human condition Essay Example for Free

Commentator on the human condition Essay Michael Leunig is a commentator on the human condition who uses simple, short cartoons to express his ideas to the public. In The Plotter, he conveys the message that society operates in a created sense of urgency. The idea is that the majority of the people believe that acting too slowly upon seeing an opportunity means there will be no other chances of success later on and thus must move quickly. Another idea that arises in The Plotter is that life is a journey and not a destination. This is all shown using intriguing techniques in his interesting and comical cartoon that captures its viewers. The episode starts out with an individual character walking towards the left slowly followed by the screen. Every step is taken with precision, taking about the same amount of time for each step to land, and this is emphasised by the musical beat of the background. The music is motion-toned as the pitch rises as a hurrying man runs from right to left, passing the individual. As the man runs past he calls out , and the individuals response is After this, the pitch is lowered again and the individual continues walking slowly. Only in a matter of seconds, a lady comes running by in the same direction and as she passes she yells to which he replies . One by one, people run past him trying to condemn and mock the leisurely individual for not conforming, however, the individual remains unhurt by their sayings and repeats pleasant words as an answer to the runners. The technique of dialogue and its setting out is very important. It tells the viewer that the individual thinks in his own ways, not conforming to the society that believes in the created sense of urgency. This individual has his own objective in life and wants to live by experiencing everything slowly while others try to make him keep in touch with the real world hence the call you wont know whats happening, you wont be clever. Visual techniques used by Michael Leunig to deliver his ideas include colour, foreground/backgrounding and body language. The colour of the background is natural, with the sky in blue and the ground in green as grass usually is. This use of natural colour has connotations to the natural instincts of human beings and thus links with the issue that Leunig suggests. The colour of the people running in the background is darker than the individual who stands in the foreground, possibly containing the meaning of evil in the runners, who together represent the majority of the world. The foregrounding of the individual and the backgrounding of the runners signifies the individual over the other people, as if criticising the world in the background and using the individual character to portray the world that should be as it always is with Michael Leunigs works. The posture and body language of the characters in The Plotter is organised so that the individual is slightly hunched showing the persons humbleness while the runners are portrayed standing tall and strong showing false confidence. Through these techniques, Michael Leunig illustrates a simple and interesting story with deep meaning,

Saturday, September 21, 2019

Victorian Age Literature in the Light of Industrialization Essay Example for Free

Victorian Age Literature in the Light of Industrialization Essay Writers during the Victorian age wrote about the detrimental effects of the Industrial Revolution, traditional gender roles, and a failing adherence to morality. In their works, Victorian writers convey social unrest, which was aggravated by unyielding industry. Female authors were often more popular than their male counterparts, and often had to hide their authorship. For instance, poet Elizabeth Barrett Browning gave a harsh critique of the Industrial Revolution, gender roles, and the decaying sense of morality during the Victorian period in her poem â€Å"The Cry of the Children. † The subject of her poem is the plight of young children, who were forced to labor in appalling conditions of industrialization. â€Å"They are weeping in the playtime of the others / In the country of the free† (11-12). This poetry by Browning typifies the way in which cognitive dissonance for child labor, as well as other social ills, was utilized by Victorian writers to admonish the wrong doings of society. Browning draws a close comparison between the control of men over the machine of industrialization in society and God’s plenary powers over humanity: â€Å"He is speechless as a stone / And they tell us, of His image the master / Who commands us to work on† (126-129). Furthermore, the poem focused on this paradox by contrasting the fact that, while Britain purports to be moral and free, the actual lives of those who should be the most protected and liberated, the children, are absolutely deplorable. Browning’s poetry also strongly exemplifies the way in which many Victorian authors incorporated, along with the criticism of industrialization, the subject of society’s faulty preconceptions of gender roles. Works Cited Browning, Elizabeth Barrett. â€Å"The Cry of the Children. † The Norton Anthology of English Literature. 7th ed. Vol. 2. Ed. M. H Abrams. New York: W. W. Norton Company, 2000. 1174-1178. Riley, Brendan. † Characteristics of Victorianism and the Departing Thereof. † University Journal, Association of Young Journalists and Writers, http://ayjw. org/articles. php? id=725681, 2006.

Friday, September 20, 2019

Vienna in the Classical Period

Vienna in the Classical Period This essay will review the information which justify the question: Why was Vienna such an important cultural centre in classical period? First of all I will refer to the city of Vienna in which a great civilization was developed in the past and actually in classical period. Vienna is characterized as the cultural capital of Europe, until today. In 1918 Vienna was designated the capital of Austria which was one of the four countries which were containing the Multi Empire of Habsburg. Also classical period refers to the period that began around 1750 and ended in 1830. So this essay will provide the cultural development of eighteenth century which took place in Vienna. During the late eighteenth century Vienna attracted composers from across Europe. Composers like Mozart, Haydn and Beethoven were drawn to the city by patronage of Habsburgs who were willing to support the music.  [1]  Furthermore during the eighteenth century, except of the music development, a cultural development in the field of architecture and arts occured. The words elegance, grace, symmetry and restrain are the most suitable words for the tendencies of the music, of art and the architecture of that period.  [2]  Also in classical period a development in theatre and opera style was noticed. Furthermore there is confusion between the words cultural and civilization. Most people believe that, these two words refer to the same thing, but there is a difference, which will be explained bellow, to make sense what is mean by cultural centre. When we talk about civilization we mean the tradition, the customs, the habits, the intellectual and artistic development of particular country or city. It is a way of creating one state in which lives and activates a society, with education. On the other hand cultural is the approach monument of development of previous civilisations as historical objects and also the study of them. Cultural means cultivation and development. It is the knowledge of an object. So that is the difference between civilizations and cultural. When we mention in cultural centre we mean the study of the objects that happened or developed in this particular place and the study of the civilization in this time. So this essay will explain what happened in Vienna in classical period and which areas developed culturally. The Habsburg Empire during the eighteenth century became one of the greatest Dynastic States in Europe and Austria was one of the countries, were consisting the rule of the Habsburg Empire. Since the sixteenth century Vienna had been under the threat of the Turks but in 1685 Austria achieved to defeat the Turks and drove them back to Hungary.  [3]  The territories of the Habsburg Empire were located in eastern and south-central Europe. As David F. Good mentions in his book Vienna was the geographical nucleus centre of the Empire and so the city famed historical importance.  [4]  While Austria was under the Habsburg Crown it was an autonomous state,  [5]  and was ruling in most territories of the Empire. After the death of Charles VI Archduke in October in 1740, his daughter Maria Theresa, who was born in Vienna, took the rule.  [6]  She was regarded as the greatest of the Habsburgs rules.  [7]  When she became empress she was 40 years and led the Austria in a golden era. Maria Theresa spread the education and she introduced 500 public schools. She helped the industry growth and put lower taxes on the products. Thus she improved the economy. She also reformed the army and the legal system. Maria also contributed in the developed of Classical music as it was the main development in that period. Maria and her 16 children performed operas and dances. In 1762, Maria Theresa presented Vienna with the forts performance of Glucks innovation opera Orpheus and Eurydice.  [8]  Joseph II, Marias Theresas was the continuer of her activities, from 1780 until 1790. He was another one zealous reformer, who abolished the selfdom and he secularized the religious properties.  [9]   It is known that when, the economy of a country is going very well and the only occupation of its habitants it is not the struggle of survival, they turn to the development of their civilization. They turn to the development of arts and they are giving importance to education. During the classical period the economy of Austria was going very well and that contributed to be their only concern the cultural development. That made Vienna a cultural centre and wider the capital of Europe. The elements of civilization that were developed in Vienna in classical period were music, the theatre the architecture, and the arts like painting and sculpture. In ancient times the music accompanied the people in their activities, which the most of them were religious. But the ideological difference of Renaissance changed the data. During the eighteenth century music gained its own ground and released from the religiosity. In that period composers from all over the Europe were drawn to Vienna by the patronage of Habsburgs. That period, European music enriched from instruments. Further Vienna could be characterized also as the capital of serious music because it hosted important representatives of the great European traditional. The famous composers all of the time, who were considered as the three monsters of classical period and contributed with their remarkable musical work, to be the city of Vienna such an important cultural centre were Haydn Mozart and Beethoven. Franz Joseph Haydn was born in Rohrou, in Austria he considered as the father of symphony. Additionally it is necessary to mention that in 1797, Haydn became the composer of the Austrian national anthem Gott erhalte Franz den Kaiser. In 1803, the city of Vienna gave to Haydn the large golden Salvator -medal, and during the 1804 became an honour citizen of Vienna. After his dead he took the sympathy of Viennese people and they called for his honour his cemetery as the Haydn Park.  [10]   Likewise Mozart, the musical genius born in Salzburg, in Austria. His father, Leopold, as a violin teacher, recognized soon, the musical talent of his son. By the age of 5 Mozart started to compose minuets. His fame as a great musician began by the age of 6, when the family invited from the Empress Maria Theresa in Vienna and there he played piano. Then Mozart started travelling in European countries with high music culture and he was conducting concerts, but he decide to move back to Vienna, because he believed that it was the best place for him to stay. He lived in Vienna many creative and successful years,  [11]  where he became a great concert organizer and a piano virtuoso, a conductor and an important composer. Also he composed many sonatas, strings quartet and operas which still heard until nowadays. In the same way, Beethoven is classified in the list of most famous composers of classical period. He born in Bonn, in Germany, moved to the note musical centre, Vienna with the ambition to be a great and famous composer as Haydn and Mozart.  [12]  The dream of Beethoven became true. He appeared in concerts in Vienna as a pianist, since he established as the city pianist. He also composed remarkable sonatas and symphonies. Beethoven became the first successful freelance of Vienna.  [13]  The musical life works of that composers still hearing until nowadays and the visitors of Vienna go to the capital of classical music to enjoy live that great works. The theatre as well noticed a great development in Austria and especially in Vienna, which became the city of religious drama. During the Middle Ages developed three forms of theatre, the Jesuit drama, the commedia Dell Arte and the Italian Opera. That forms underlie the theatre of eighteenth century and figured the Vienna one of the most attractive theatrical cultures of Europe. The popular theatre appeared for the first time in 1711, with the contribution of Josef Stranitzky who was an improvisational player and led the Karntnerto Theater in Vienna to take over by an Italian company. Stranitzky was instantly supported by the populace. But in the second half of eighteenth century the improvisation gradually started to disappear from the theatrical stage. In the late eighteenth century in 1791, appeared one of the greatest theatrical productions, in Vienna.  [14]   Additionally, during the eighteenth century, Vienna flourished and became a cosmopolitan centre. The architecture of the city was characterized by bulky building which beautified the skyline. Those buildings do not have the style of early medieval buildings but many of those Gothic buildings had the style of older foundations. Let have a look where has its roots the architecture of eighteenth century. During the 1300s the architecture of the churches was based on the Hallenkirche (hall church), which it was German style. The St. Stephans Cathedral, where the famous composer of classical period Haydn performed from his childhood as tenor, has the style of Hallenkirche. In Renaissance other buildings were not built up, because the Turks, who besieged the city periodically from 1529 until the 1680, were allowing only the strength of Viennas fortifications.  [15]   Austrias architects started to produce in the golden age of Austria baroque architecture, when the Leopold I, was ruling. Johan Bernhard Fischer von Erlach, (1656-1723) was an architect, who took elements from the Italianate baroque and tried to approximate them to the Viennese style. He was the architect of Maria Theresas Schonbrum Palace and his work characterized by a restrained and monumental style. The palace has the style of rococo which developed in the early eighteenth century and has similarities with the baroque style. The Schonbrum Palace and the other building of rococo style were gilded stucco with brightly colored frescoes. After Fischer another architect became famous for his design, Johann Lukans von Hildebrand (1668 -1745). The Belvedere Palace of Prince Eugene, designed by Hildebrand with interlocking cubes and a style of slopping mansard roof. So that provides the influence from Fischer von Erlach. Also the Schahwarzenberg Palace in Vienna was designed by Hildebran d.  [16]   The Viennese architects in eighteenth century were using the neoclassical architecture styles. They approximated the classical architect of Greeks and Romans. They used cleaner lines in their designs and squarer. The buildings were bulkier and they had preponderance of columns. Further painting and sculpture remarked a development during the eighteenth century. Bernardo Bellotto, who was a pupil of his uncle famous Painter Venetian, Canalrtto, invited from Maria Theresa to make the city flat with clear light, details and accuracy. Bellottos painting can be characterized as social, historical and artistic documents. Martin van Meysten was another one famous painter of eighteenth century. Meysten composed his cavances with clumsiness and they are overburdened. Those cavances are the best of Austrian courts balls and receptions. In 1730, he became the manager of Fine Arts Academy in Vienna.  [17]   Also the sculpture developed during the classical period in Vienna. There were three famous sculptors who stayed in history for their remarkable works. The first was Georg Raphael Donner, who made the bronzes of the Fountain of Providence in the Neuer Mark and it has life-size. Also Bathasar Permoser created the equestrian statues, which was located in the courtyard of the Belvedere Palace. Further Balthasar Moll was the third famous sculptor and created the double sarcophagus for Maria Theresa and his husband Frances Stephan. Sarcophagus located in the Kapuzinerkirche. Franz Xaver Messerschmidt was a habitant of Vienna and he is famous for his portrait bust. Franz made the portrait of famous representatives as Maria Theresa, of her son Joseph II and others.  [18]   In addition the economic prosperity in Vienna in eighteenth century fostered the conditions of intellectual Rise. Greeks immigrants contributed in this as they created a Greek colony in Vienna when they left from the Greece to escape from the chaos that prevailed in the country at the long of Turkish rule. The ideas of the enlightenment found in Vienna fertile ground. Before the French revolution scholars clergy like Anthimos Gajis, Neofitos Doukas and Constantinos Koumas made Vienna the most important intellectual centre. In that period strong editorial activity at the Greek printings in Vienna was noticed; which were printing books of philosophy, of science of mathematics, of geography pedagogical and also medical books.  [19]   To conclude undoubtedly Vienna developed a great civilization in classical period and was characterised from many people as a cultural centre and as the capital of classical music because activated there the most famous composers all of the times. Fairly, we can give to Vienna these characterizations. In this contributed the great Dynastic, the Habsburg Empire, mainly Maria Theresa and his son Joseph II. It is known that Maria Theresa contributed to the rise and aid of the economy of Vienna, which was not very good, because of the wars conductor in classical period. Maria Theresa was an admirable empress who achieved to strengthen the economy of Vienna by stimulating the industry. She lowered the taxes and she gave importance on the establishment of schools. The cultural development of each nation is based on the education of the people who live in an organized society. Also it is important to refer to the Greeks immigrants who created a colony in Vienna and by this contributed in the rise of Viennas economy. Greeks developed a strong economic activity and they dealt with the commercial and they made Vienna in the eighteenth century a commercial crossroad. Hence, the economy of Vienna was going very well. The civilization found, fertile ground to develop in all aspects and the Vienna became a great intellectual and cultural centre. Finally Vienna, fairly took the title of a cultural centre Because in that city in eighteenth century and especially in classical period, all the aspects of civilization as the music, the architecture, the painting and the sculpture developed. As mentioned before, cultural means the study of an object, the cultivation and the development of a particular place in a particular period. Thus Vienna can be characterised as one of the most important cultural centres in classical period.

Thursday, September 19, 2019

Shakespeares Othello - Why did Othello Marry? :: GCSE English Literature Coursework

Why did Othello Marry? Why did Othello marry is a complex question, the obvious answer would be that he loves Desdemona, but why does he love her and why does his love turn to hate so quickly in Act III scene 3 requires much thought and consideration. Othello likes people to be plain and open because that is what he himself is, he has grown to become his image, he is only on the surface, he hides nothing because that is his image, to only have one side, the military side. Thus Desdemona also seems to him very open, he likes her because he thinks she is like him however when he finds that she might be hiding something from him then he stops loving her. At the same time Othello needs a wife to complete his image, she is the proof that he is a successful general and Christian and he can show her off as such. Othello loves or thinks he loves Desdemona for many reasons, not least because he thinks she is like him. He thinks it will be a good relationship because she seems to be in his eyes just like a soldier thus like him so that he attracted her while telling her tales of his battles as seen in Act I scene 3: "She loved me for the dangers I has passed". He talks to her as he talks to a soldier using images of war and might: "May the winds blow till they have wakened death, And let the labouring bark climb hills of seas". Because she comes with him to the wars, she becomes even more in his mind one of his soldiers so that after he comes back to Cyprus he greets her with: "O, my fair warrior". Othello can not cope with anybody who is different from him, who he cannot understand so that because he sees so much of himself in Desdemona he loves her. She is his "hard bright surface" because she reflects his image when he looks at her. She is commanding, smart and self-confident which he sees as his own best qualities. She shows how commanding and smart she is when she first answers her father in Act I scene 3: To you I am bound for life and education; My life and education both do learn me How to respect you.

Wednesday, September 18, 2019

Essay --

From the first time I watched this show in Vince McMahon claims that as he was about to announce "Welcome to WrestleMania III," he felt the spirit of his father Vincent J. McMahon, who had died three years earlier. After he made that announcement he introduced Aretha Franklin, who opened the show singing a rendition of "America the Beautiful."[24] The first match of the night was The Can-Am Connection versus Bob Orton and The Magnificent Muraco (with Mr. Fuji). This match ended when Rick Martel gave Don Muraco a high cross-body with Zenk on his hands and knees giving Muraco what Gorilla Monsoon called "A little schoolboy trip from behind" allowing Martel to get the win for his team.[1][25] The next match that aired was Hercules (with Bobby Heenan in his corner) against Billy Jack Haynes in the "Full Nelson Challenge." The match ended when Haynes locked Hercules in the full nelson outside the ring and both were counted out.[1][25] After the match, Bobby Heenan assaulted Haynes by kneeing him in the back, and Haynes chased Heenan into the ring, where Hercules then blindsided Haynes with his chain, hitting him a number of times with it before locking him in a full nelson of his own.[26] The Mixed Tag Team Match between King Kong Bundy and his midget team of Lord Littlebrook and Little Tokyo against Hillbilly Jim and his own midget team of The Haiti Kid and Little Beaver was next. King Kong Bundy's team was disqualified when Bundy attacked Little Beaver, because Bundy was not supposed to be in the ring with the midgets.[17] Bundy attacked Little Beaver after Beaver had "attacked" him on occasion during the match and finally got caught. The "Loser Must Bow" match between Junkyard Dog and King Harley Race (with Bobby Heenan and The Fa... ...hed to it, got on the microphone and said that Volkoff was not going to sing because America is the land of the free and the home of the brave.[26] While the match ensued, Duggan stayed at ringside. When The Iron Sheik locked a camel clutch on "Jumping Jim" Brunzell, Duggan, who was chasing Volkoff around the ring and finally into it, stopped and hit an unsuspecting Sheik across the back with his two by four in front of the referee, resulting in The Iron Sheik and Nikolai Volkoff winning the bout by disqualification. In what was billed as the "biggest main event in sports entertainment,"[30] the match pitted WWF Champion Hulk Hogan defending the title against Andrà © the Giant (with Bobby Heenan).[1] Howard Finkel introduced the guest ring announcer, "Mr Baseball" Bob Uecker, who in turn introduced the guest time keeper, Entertainment Tonight host Mary Hart. The fans