MaplePrimes Posts

MaplePrimes Posts are for sharing your experiences, techniques and opinions about Maple, MapleSim and related products, as well as general interests in math and computing.

Latest Post
  • Latest Posts Feed
  • The trailers for the new Star Wars movie (Star Wars: The Force Awakens) introduced a new Droid called BB-8. This curious little guy features a spherical body and a controlled instrumented head. More recently, the BB-8 droid was showcased in a Star Wars celebration event and to many peoples' surprise it is real and not a CGI effect!

    We have a Sphero robot from Orbotix here at the office, and there was an immediate connection between BB-8 and the Sphero. All that remains is to add the head!

    Many have already put together their version of the BB-8, but I wanted to have a physical model that I can play with in a virtual environment and explore some design options.


     

    Preparation:

    To build a model of BB-8 like robotic system in MapleSim (Maplesoft's physical modeling software environment), I first needed a couple things in place before going forward:

    1. A few simple CAD shapes (half-sphere, wheels)

    2. A component to represent the contact between two spheres (both outside contact and inside contact)

    I used Maple’s plottools package to build the CAD files I needed. First a half-spherical shape:

    Then a wheel:

     

    The next step was to create the contact component in MapleSim. I used a Modelica custom component to bring together vector calculations of normal and tangential forces with a variety of options for convenience into one component:

     

     

    Build the model:

    We start with a spherical shape contacting the ground:

     

    Then we add two wheels inside it, and a hanging mass to keep the reference axis vertical when the wheels turn:

     

    Learning from published diagrams showing the internal mechanism of a Sphero, another set of free wheels improves the overall stability when motion commands are given to the two active wheels:

     

    Now this model can be used to move around the surface by giving speed commands to the individual motors that drive to the two bottom wheels. What is needed next is the head and the mechanism to move it around.

    Since the head can move almost freely, independent of body rotation, it has to be controlled via magnetic contacts and a controlled arm.

    First, we add the control arm:

     

    Now we need to build the head.

    The head has an identical triangle to the one at the end of the control arm. At each vertex there is a ball bearing that would slide on the surface of the main spherical body without friction. The magnetic force between the corresponding vertices of the two triangles is modeled via the available point-to-point force element in MapleSim.

     

     

    Once assembled, the MapleSim model diagram looks like this:

     

    ...and our BB-8 droid looks like this:

     

     

    Seeing the BB-8 in action:

    Now that we have constructed our droid in MapleSim, we can animate and see it in action!

     

    With this application we can meet safety characteristics of a relationship and simple or compound functions. Made with maple 2015.

    Relaciones_y_Funciones.mw

    (in spanish)

    L.AraujoC.

     

         Maple is seriously used in my article Approximation of subharmonic functions in the half-plane by the logarithm of the modulus of an analytic function. Math. Notes 78, No 4, 447-455 in two places. The purpose of this post is to present these applications.                                                                                                 First, I needed to prove the elementary inequality (related to the properties of the minimal harmonic majorant of the function 1/Im z in a certain strip)                                                                                                    2R+sqrt(R)-R(R+sqrt(R))y - 1/y   1/4                                                                                                  for    y ≥ 1/(R+sqrt(R)) and  y ≤ 1/R, the parameter R is greater than or equal to 1.   The artless attemt                                                                          
    restart; `assuming`([maximize(2*R+sqrt(R)-R*(R+sqrt(R))*y-1/y, y = 1/(R+sqrt(R)) .. 1/R)], [R >= 1])

    maximize(2*R+R^(1/2)-R*(R+R^(1/2))*y-1/y, y = 1/(R+R^(1/2)) .. 1/R)

    (1)

    fails. The second (and successful) try consists in the use of optimizers:

    F := proc (R) options operator, arrow; evalf(maximize(2*R+sqrt(R)-R*(R+sqrt(R))*y-1/y, y = 1/(R+sqrt(R)) .. 1/R)) end proc:

    F(1)

    .171572876

    (2)

     

    Optimization:-Minimize('F(R)', {R >= 1})

    [.171572875253809986, [R = HFloat(1.0)]]

    (3)

    To be sure ,
    DirectSearch:-Search(proc (R) options operator, arrow; F(R) end proc, {R >= 1})
    ;

    [.171572875745665, Vector(1, {(1) = 1.0000000195752754}, datatype = float[8]), 11]

    (4)

    Because 0.17
    "158 < 0.25, the inequality is  proved.   "
    Now we establish this  by the use of the derivative. 

    solve(diff(2*R+sqrt(R)-R*(R+sqrt(R))*y-1/y, y) = 0, y, explicit)

    1/(R^(3/2)+R^2)^(1/2), -1/(R^(3/2)+R^2)^(1/2)

    (5)

    maximize(1/sqrt(R^(3/2)+R^2)-1/(R+sqrt(R)), R = 1 .. infinity, location)

    (1/2)*2^(1/2)-1/2, {[{R = 1}, (1/2)*2^(1/2)-1/2]}

    (6)

    minimize(eval(2*R+sqrt(R)-R*(R+sqrt(R))*y-1/y, y = 1/sqrt(R^(3/2)+R^2)), R = 1 .. infinity, location)

    3-2*2^(1/2), {[{R = 1}, 3-2*2^(1/2)]}

    (7)

    evalf(3-2*sqrt(2))

    .171572876

    (8)

    The second use of Maple was the calculation of the asymptotics of the following integral (This is the double integral of the Laplacian of 1/Im z over the domain {z: |z-iR/2| < R/2} \ {z: |z| ≤ 1}.). That place is the key point of the proof. Its direct calculation in the polar coordinates fails.

    `assuming`([(int(int(2/(r^2*sin(phi)^3), r = 1 .. R*sin(phi)), phi = arcsin(1/R) .. Pi-arcsin(1/R)))/(2*Pi)], [R >= 1])

    (1/2)*(int(int(2/(r^2*sin(phi)^3), r = 1 .. R*sin(phi)), phi = arcsin(1/R) .. Pi-arcsin(1/R)))/Pi

    (9)

    In order to overcome the difficulty, we find the inner integral

    `assuming`([(int(2/(r^2*sin(phi)^3), r = 1 .. R*sin(phi)))/(2*Pi)], [R*sin(phi) >= 1])

    (R*sin(phi)-1)/(sin(phi)^4*R*Pi)

    (10)

    and then we find the outer integral. Because
    `assuming`([int((R*sin(phi)-1)/(sin(phi)^4*R*Pi), phi = arcsin(1/R) .. Pi-arcsin(1/R))], [R >= 1])

    int((R*sin(phi)-1)/(sin(phi)^4*R*Pi), phi = arcsin(1/R) .. Pi-arcsin(1/R))

    (11)

    is not successful, we find the indefinite integral  

    J := int((R*sin(phi)-1)/(sin(phi)^4*R*Pi), phi)

    -(1/2)*cos(phi)/(Pi*sin(phi)^2)+(1/2)*ln(csc(phi)-cot(phi))/Pi+(1/3)*cos(phi)/(R*Pi*sin(phi)^3)+(2/3)*cos(phi)/(R*Pi*sin(phi))

    (12)

    We verify that  the domain of the antiderivative includes the range of the integration.
    plot(-cos(phi)/sin(phi)^2+ln(csc(phi)-cot(phi)), phi = 0 .. Pi)

     

    plot((2/3)*cos(phi)/sin(phi)^3+(4/3)*cos(phi)/sin(phi), phi = 0 .. Pi)

     

        That's all right. By the Newton-Leibnitz formula,

    ``
    eval(J, phi = Pi-arcsin(1/R))-(eval(J, phi = arcsin(1/R)));

    (1/3)*(1-1/R^2)^(1/2)*R^2/Pi+(1/2)*ln((1-1/R^2)^(1/2)*R+R)/Pi-(4/3)*(1-1/R^2)^(1/2)/Pi-(1/2)*ln(R-(1-1/R^2)^(1/2)*R)/Pi

    (13)

    Finally, the*asymptotics*is found by

    asympt(eval(J, phi = Pi-arcsin(1/R))-(eval(J, phi = arcsin(1/R))), R, 3)

    (1/3)*R^2/Pi-(3/2)/Pi+(1/2)*(ln(2)+ln(R))/Pi-(1/2)*(-ln(2)-ln(R))/Pi+O(1/R^2)

    (14)

          It should be noted that a somewhat different expression is written in the article. My inaccuracy, as far as I remember it, consisted in the integration over the whole disk {z: |z-iR/2| < R/2} instead of {z: |z-iR/2| < R/2} \ {z: |z| ≤ 1}. Because only the form of the asymptotics const*R^2 + remainder is used in the article, the exact value of this non-zero constant is of no importance.

           It would be nice if somebody else presents similar examples here or elsewhere.

     

    Download Discovery_with_Maple.mw

    I'd like to pay attention to an application "Interaural Time Delay" by Samir Khan. His applications are interesting, based on  real data, and  mathematically accurate. Here is its introduction:

    "Humans locate the origin of a sound with several cues. One technique employs the small difference in the time taken for the sound to reach either ear; this is known as the interaural time delay (ITD). This application modifies a single-channel audio file so that the sound appears to originate at an angle from the observer. It does this by introducing an extra channel of sound. Despite both channels having the same amplitude, the sound appears to come from an angle simply by delaying one channel".

    Maplesoft regularly hosts live webinars on a variety of topics. Below you will find details on upcoming webinars we think may be of interest to the MaplePrimes community.  For the complete list of upcoming webinars, visit our website.

    Case Study: Transforming a University's Placement Testing Process

    This webinar will feature the story of how the University of the Virgin Islands moved their placing testing process from paper and pen to using the Mathematical Association of America’s (MAA) placement tests offered through the Maple T.A. testing environment. Instructors at the university now handpick questions to create their own placement tests that best fit the course they are teaching. From there, they are able to analyze the data and craft lessons based on student performance. The end result is that students are more satisfied with the education they are receiving and instructors have made enormous gains with regards to efficiency and flexibility.

    To join us for the live presentation with Dr. Celil Ekici from the University of the Virgin Islands, please click here to register.

    Getting Started with Maple

    This webinar is designed for the user who comes to Maple for the first time. It will demonstrate “how to get started” by clarifying the user interface and the ways math can be entered into Maple, and then “processed.” Coverage includes

    • Entering mathematical expressions and interacting with them in a syntax-free way.
    • The difference between input in mathematical notation and “linear” or text form.
    • The role of the Context Sensitive Menu system for interacting with mathematical objects.
    • Graphing and interacting with various types of graphs, including animations, surfaces, and implicit plots.
    • Use of built-in tools such as Assistants, Tutors, and Task Templates.
    • The Maple help system and the Maple Portal.
    • Introduction to differential equations and matrix manipulations.

    To join us for the live presentation, please click here to register.

    3-D Model Import/Export and Printing The new Import and Export commands introduced in Maple 2015 provide a unified approach to all data import and export activities, replacing the need to use different commands in different situations. They can be used with many of the wide variety of file types supported by Maple, including 3-D graphics data, numeric and tabular data, images, audio files, special-purpose formats for mathematical objects such as graphs, and much more.

    In the following example, you can see how to use these commands in order to bring 3-D models from the popular website Thingiverse and to export 3-D plots to a format suitable for 3-D printing.

    Tips and Techniques: 3-D Model Import/Export and Printing

    Another application for the study of rational numbers in operations, generating fraction, etc.

     

    Numeros_Racionales.mw

    (in spanish)

     

    Atte.

    L.AraujoC.

    As you saw in the Maple 2015 What’s New, the MapleCloud is now online at maplecloud.maplesoft.com.  In addition to accessing MapleCloud content from within Maple, you can now use a web browser to view and interact with MapleCloud documents. The new online MapleCloud is based on HTML5 and works across a broad range of browsers. No plugins. No Java.

    The MapleCloud was first introduced about five years ago, in Maple 14, and has allowed Maple users around the globe to share worksheets and Math Apps with fellow users. The Maple Cloud allows you to create groups in order to share content with specific people, as well as sharing them publicly.  Today we count over 1400 such groups that have been created for a class, a project or a workgroup, hosting tens of thousands of Maple worksheets, with thousands of worksheets being up- and down-loaded every month. Feedback has been tremendous, and clearly, this feature has hit a nerve with our user community and has attracted a strong following.

    A common use case is to set up a MapleCloud group for a class in order to exchange Maple material among students and instructors. Some teachers are using this as the primary mechanism for submitting and marking assignments. Just as common is to use the MapleCloud as a convenient way to exchange and review documents while working on a joint project. Many users also use the Cloud to store their own documents in a private online space so that they can access them from multiple computers and locations. Wherever they have access to Maple, they also have access to all their Maple documents.

    Then, there are the public groups in the MapleCloud, where users around the world freely share applications and examples; it’s a treasure trove of material covering all sorts of topics from calculus to fractals.

    Now online, the MapleCloud continues to be a great repository for Maple content, but in addition, there are also some new aspects. For starters, it is really easy to share a Maple worksheet or Math App with someone else by simply giving them a URL. Click on it and the Maple worksheet opens in your web browser and all interactive components and plots are live - you can change parameters, calculate new results and update plots. For example, you can try out a Password Security tool or explore the Vertex of a Parabola. Maple is not required for consuming content in this way. But if you do have Maple, another click downloads the document to your local copy of Maple, where you can modify and extend it.

    The online MapleCloud is a great way to manage your documents and share Maple content with students and colleagues.  This, of course, is only one more step towards making all of our technology available online and you will see more unfold over the course of this year!

    The work contains two procedures called  SetPartition  and  NumbPart .

    The first procedure  SetPartition  generates all the partitions of a set  S  into disjoint subsets of specific sizes defined by a list  Q. The third optional parameter is the symbol  `ordered`  or  `nonordered`  (by default) . It determines whether the order of subsets in a partition is significant.

    The second procedure  NumbPart  returns the number of all partitions of the sizes indicated by  Q .

     

    Codes of these procedures:

    SetPartition:=proc(S::set, Q::list(posint), K::symbol:=nonordered)  # Procedure finds all partitions of the set  S  into subsets of the specific size given Q.

    local L, P, T, S1, S2, n, i, j, m, k, M;

    uses ListTools,combinat;

    if `+`(op(Q))<>nops(S) then error "Should be `+`(op(Q))=nops(S)" fi;

    L:=convert(Q,set);

    T:=[seq([L[i],Occurrences(L[i],Q)], i=1..nops(L))];

    P:=`if`(K=ordered,convert(T,list),convert(T,set));

    S1:=S;  S2:={`if`(K=ordered,[],{})}; n:=nops(P);

    for i to n do

    m:=P[i,1]; k:=P[i,2];

    for j to k do

    S2:={seq(seq(`if`(K=ordered,[op(s),t],{op(s),t}), t=choose(S1 minus `union`(op(s)),m)), s=S2)};

    od; od;

    if K=ordered then {map(op@permute,S2)[]} else S2 fi;

    end proc:

     

    NumbPart:=proc(Q::list(posint), K::symbol:=nonordered)  # Procedure finds the number of all partitions of a set into subsets of the specific size given  Q

    local L, T, P, n, S, N;

    uses ListTools;

    L:=convert(Q,set);

    T:=[seq([L[i],Occurrences(L[i],Q)], i=1..nops(L))];

    P:=`if`(K=ordered,convert(T,list),convert(T,set));

    n:=nops(P);  N:=add(P[i,2], i=1..n);

    S:=add(P[i,1]*P[i,2],i=1..n)!/mul(P[i,1]!^P[i,2],i=1..n)/mul(P[i,2]!,i=1..n);

    if K=nonordered then return S else  S*N! fi;

    end proc:

     

    Examples of use:

    SetPartition({a,b,c,d,e}, [1,1,3]);  nops(%);  # Nonordered partitions and their number

    SetPartition({a,b,c,d,e}, [1,1,3], ordered);  nops(%);  # Ordered partitions and their number

     

     

    Here's a more interesting example. 5 fruits  {apple, pear, orange, mango, peach}  must be put on three plates so that  on each of two plates there are 2  fruits, and there is one fruit  on one plate. Two variants to solve: 1) plates are indistinguishable and 2) different plates. In how many ways can this be done?

    SetPartition({apple,pear,orange,mango,peach}, [1,2,2]);  nops(%);  # plates are indistinguishable

     

    NumbPart([1,2,2], ordered);  # Number of ways for  different plates

                                                                  90

     

    Another example - how many ways can be divided  100 objects into 10 equal parts?

    NumbPart([10$10]);

        64954656894649578274066349293466217242333450230560675312538868633528911487364888307200

     

     SetPartition.mws

    Application of the properties of real numbers such as divisible factors, quantity and sum of prime divisors, DCM and MCM among others. All the technology embedded components of Maple.

     

    Propiedad_de_los_Numeros.mw

     

    Atte.

    L.AraujoC.

     

     

     

    I would like to pay attention to an article by David Austin "The Stable Marriage Problem and School Choice"

    Here is its inroduction:

    " Every year, 75,000 New York City eighth graders apply for admission to one of the city's 426 public high schools. Until recently, this process asked students to list five schools in order of preference. These lists were sent to the schools, who decided which applicants to accept, wait-list, or reject. The students were then notified of their status and allowed to accept only one offer and one position on a waiting list. After the students had responded to any offers received, schools with unfilled positions made a second round of offers, and this process continued through a concluding third round.

    This process had several serious problems. At the end of the third round of offers, nearly half of the students, usually lower-performing students from poor families, had not been accepted into a school. Many of these students waited through the summer only to learn they had been matched with a school that was not on their list of five schools.

    This process also encouraged students and their parents to think strategically about the list of schools they submitted. Students that were rejected by the school at the top of their list might find that their second-choice school had no vacancies in the second round of offers. This made it risky for many students to faithfully state their true preferences, a view encouraged by the Education Department's advice that students "determine what your competition is" before creating their lists of preferred schools.

    Lastly, schools would often underrepresent their capacity hoping to save positions for students who were unhappy with their initial offerings.

    In the end, the process couldn't place many students while it encouraged all parties, both students and schools, to strategically misrepresent themselves in an effort to obtain more desirable outcomes not possible otherwise. Widespread mistrust in the placement process was a natural consequence.

    Using ideas described in this column, economists Atila Abdulkadiroglu, Parag Pathak, and Alvin Roth designed a clearinghouse for matching students with high schools, which was first implemented in 2004. This new computerized algorithm places all but about 3000 students each year and results in more students receiving offers from their first-choice schools. As a result, students now submit lists that reflect their true preferences, which provides school officials with public input into the determination of which schools to close or reform. For their part, schools have found that there is no longer an advantage to underrepresenting their capacity.

    The key to this new algorithm is the notion of stability, first introduced in a 1962 paper by Gale and Shapley. We say that a matching of students to schools is stable if there is not a student and a school who would prefer to be matched with each other more than their current matches. Gale and Shapley introduced an algorithm, sometimes called deferred acceptance, which is guaranteed to produced a stable matching. Later, Roth showed that when the deferred acceptance algorithm is applied, a student can not gain admittance into a more preferred school by strategically misrepresenting his or her preferences.

    This column will present the game-theoretic results contained in the original Gale-Shapley paper along with Roth's subsequent analysis. Pathak calls the deferred acceptance algorithm "one of the great ideas in economics," and Roth and Shapley were awarded the 2012 Nobel Prize in economics for this work"

    It would be nice to realize that in Maple.

     

     

    Maple T.A. 10 introduced two new question types: Sketch and Free Body Diagram. To assist users in learning the new question types, Maplesoft has created a few hundred samples to look at. These sample questions are already featured on the Maple T.A. Cloud, but you can also download the course modules below. 

    Sketching Questions - This course module contains 309 sketch questions. Areas covered include: functions, exponential functions, inequalities, linear equations, logarithmic functions, piecewise functions, quadratic equations, systems of equations and transformations of functions.

    Free Body Diagram Questions - This course module contains 118 free body diagram questions. Areas covered include: Electricity, Magnetism and Mechanics.

    Jonny Zivku
    Maplesoft Product Manager, Maple T.A.

    Maplesoft regularly hosts live webinars on a variety of topics. Below you will find details on an upcoming webinar we think may be of interest to the MaplePrimes community.  For the complete list of upcoming webinars, visit our website.

    See What’s New in Maple 2015 for Educators

    Maple 2015 is a major new release of Maple, the technical computing software used for education, research, and development involving mathematics, engineering, and the sciences. With Maple 2015, Maplesoft offers important new abilities to both educators and researchers, particularly in the areas of data analysis, application development and statistics education. This webinar will provide a complete overview of these new features, including:

    • A new interface to access, work with, and visualize millions of datasets in the areas of finance, economics, and demographics.
    • New facilities for developing Math Apps, including a new microphone and speaker component.
    • Advances in integration, differential equations, interactive maps, group theory, physics, and more.
    • New Clickable Math tools, including palettes and 60 new interactive Math Apps.
    • New tutors, palettes and Math Apps designed explicitly for teaching and learning statistics.
    • And more!

    To join us for the live presentation, please click here to register.

    Hi everyone,

    at the suggestion of Carl I am making my question a post.

    History:

    Newbies often get fascinated with the power tower: x^x^x^...

    The generalized power tower z^z^z^... is a special case of the Euler sequence:

    z_{n+1}=c^z_n, for c\in C.

    Like the Mandelbrot set: z_{n+1}=z^2-c, the power tower, often called infinite exponential, also has a general periodic map. It is included below and is taken from Daniel Geisler's site:
    www.tetration.org

    Shel and Thron proved that the infinite exponential conveges whenever c belongs to the red region, called today Shell-Thron region.

    Definition of Julia Sets for the iterated exponential map:

    Also like the Mandelbrot set, the infinite exponential admits Juila Sets. The Julia Sets of the infinite exponential however, are defined differently from the Julia Sets of the Mandelbrot set. They are defined to be  the closure of the periodic repellers of the Euler sequence . They are Cantor Bouquets.  Geisler's colored map then is a general map of how the corresponding Julia set behaves roughly, with c taken from the map. 

    We can then introduce small cuts which go from the interior of the Shell-Thron region to the exterior, crossing at various angles, and this will tells us how the infinite exponential evolves. Generally speaking, each time one crosses the Shell-Thron boundary, one wittnesses what's called a Knaster explosion, wherein the exponential explodes into p subregions, where p is the pre-period of the multiplier.


    When the parameter c exits the Shell-Thron region at angles of 2*Pi and Pi from the real axis (cuts right and left, p=1, 2), the infinite exponential either transitions from converging to a single feature to exploding into multiple indecomposable contiua (p=1), or it breaks into a period 2 bifurcation (p=2), which itself, also may explode into continua.

    When it exits at angles 2*Pi/p, where p>2 is the preperiod of the multiplier, then the infinite exponential evolves from converging to a single feature, to exploding into  p major regions, called Fatou regions, each one having its own attractor, displaying a p-furcation.


    In all cases,  the Knaster explosions may introduce the presence of indecomposable continua, as some Fatou regions end up covering entire parts of the complex plane after each transition. In the animations, Knaster explosions occur whenever the background is red. There may be more than one explosion present in the evolution of the power tower. 

    Cantor Bouquets are strange creatures. They are essentially quantum sets, and no point of them is actually visible. The probability a point is visible varies directly with the area of the corresponding bouquet "finger" which is rendered in the area of interest. Devaney uses these "fingers"  to obtain "iteneraries" of the iterated exponential map.

    Points "close"  to the fingers-hairs o the Cantor Bouquets escape towards complex infinity at (final) angles 2*Pi/p.

    The "hairs" of a Cantor Bouquet are C^\infty curves, hence they can be termed easthetically pretty. Only hairs from the main Cantor bouquet for c=e^{1/e} are globally convex/concave. Every other bouquet may contain hairs which change curvature "unpredictably".

    Inlcuded files:

    1) Euler.mw

    2) EulerAnimation.mw

    3) EulerAnimation2_noaxes.mw

     

    Code for static fractal with given parameters in 1). Parameters can be changed in the constant section (Try p=2,4 or Pi)

    Code for morphing animations through cuts in the Shell-Thron region in 2). Parameters d1-d2, N

    Code for zooming animations in 3). Parameters M, M1-M2,

    Limitations:

    Will show attractors of broken Fatou basins only up to pre-period p=5. No big deal though. If you want to increase the preperiod past p=5, you need to add the relavnt tests in procedure ppc(c), otherwise the new attractors are not calculated and the plot ends up red.

    Colors are assigned a bit more dispersed, using ln(m). You can also use m in that place. It depends on which area you are in.

    Basins of attraction and Fatou regions change appearance under different epsilons. If you want different shapes for the basins, you can try using the Manhattan metric in proc Jhf, instead of |z-lim|.

    Included below are the main map of tetration by Daniel Geisler, a short excerpt of the Shell-Thron region which shows pre-periodic cuts and  6 morhing transitions, for p\in {1,2,3,4,5} and one which exits at the angle of 2 radians (p=Pi).

    References:

    More than 300. To be published with my thesis. Patches, problems and code corrections in the original question page:

    http://www.mapleprimes.com/questions/203593-Maple-13-Fast-Maple-18-Crawling

    First 71 72 73 74 75 76 77 Last Page 73 of 300