2020-04-30 15:53:46 -0500 | answered a question | Changing fonts in mark down cells. According to https://jupyter-notebook.readthedocs.... markdown is a superset of HTML. Since you can change fonts in HTML, it would follow that you can change fonts in markdown cells too. I suspect it's going to be quite painful to do, and would result in worksheets that don't fare very well under other export methods. In fact, one of the best ways to get things in Computer Modern would be by exporting your sheet to LaTeX (and probably to PDF from there) |

2020-04-27 18:07:10 -0500 | commented answer | how can i convert the elliptic curve point representation It works a little better if you call the routine different: A good computer algebra system gives you the tools to get the output/representation you want, rather than provide little custom routines to provide each possibility individually. Sagemath gives you the tools. You do the programming. |

2020-04-26 22:53:36 -0500 | answered a question | how can i convert the elliptic curve point representation You could try etc. The coordinates are given are not polynomials, although they are written as a polynomial expression in the generator of the field. With "integer representation" you basically take the bitstring obtained by looking at the coefficients of z101^i and interpreting that bitstring as an integer. |

2020-04-18 17:24:42 -0500 | received badge | ● Nice Answer (source) |

2020-04-17 14:05:02 -0500 | commented question | Rational parametrization of plane curves. Is this a bug? It looks like both: apparently singular crashes, sage restarts singular, and then expects that a previously defined object |

2020-04-06 15:21:37 -0500 | commented answer | Express Groebner basis in terms of original basis It may not be convenient but it does exactly reflect what happens: to obtain that relation, you'd need to take |

2020-04-01 10:47:59 -0500 | commented question | Express Groebner basis in terms of original basis I think the quick way for this is to carry around marker variables, say |

2020-03-29 12:50:09 -0500 | commented question | C-STACK overflow during integration As a side note: the error is one that can come from "maximalib", so it doesn't seem like your option |

2020-03-27 15:23:29 -0500 | received badge | ● Nice Answer (source) |

2020-03-26 16:10:47 -0500 | answered a question | What is the point π1=(β1,3) on the y^2=7π₯4+π₯3+π₯2+π₯+3 curve and the point corresponding to P on the x^2=x^3β250/3xβ124927 curve? The question is, unfortunately, not well-defined. The curves mentioned, while isomorphic, are not uniquely so. First you should specify which point on E1 is supposed to be mapped to the "origin" (0:1:0) on "E2", and then there is still a choice of sign. The routine As an example: This is Selmer's famous example: the curve C isn't isomorphic to the elliptic curve over Q, because C does not have rational points. The map phi computed is of degree larger than 1 (presumable degree 9, but I didn't check) |

2020-03-26 11:40:23 -0500 | commented answer | What is the point π1=(β1,3) on the y^2=7π₯4+π₯3+π₯2+π₯+3 curve and the point corresponding to P on the x^2=x^3β250/3xβ124927 curve? Note, though, that the map phi is not uniquely determined. You can compose phi with a translation on E1 and/or negation. |

2020-03-24 11:10:57 -0500 | commented answer | can one now set a timelimit on operation in sagemath? I would not trust the results of a sage session that regularly has been interrupted (by alarms or user interrupts): while the code generally tries to block interrupts in critical parts and then deal with them once the system is in a more consistent state, I would expect sage doesn't entirely succeed: I expect in some cases the system will be left in an inconsistent state (there are bugs, so this is also true without interrupts...) If you want to time-limit computations "safely", I would trust a fork-and-kill method more: then you at least discard the state of the computing processif it didn't complete. I think that indeed needs you to put some plumbing in place yourself, but that could be wrapped up in convenient routines. |

2020-03-19 17:55:44 -0500 | received badge | ● Nice Answer (source) |

2020-03-19 00:42:01 -0500 | answered a question | Interact in Jupyterlab vs Jupyter It looks like lab takes a different approach than notebook regarding javascript in output cells. It would be nice to have a more official source, but the following Q/A seems to contain some valuable info: https://stackoverflow.com/questions/4... it looks like there's some work to do once sagemath starts moving to lab in earnest. |

2020-03-17 03:02:05 -0500 | answered a question | Strange behaviour with distributivity of multiplication In Python, the rule is that if a line ends with a bracket/brace/parenthesis waiting to be closed, then the newline is read as whitespace and the expression is considered to continue on the next line. This explains the behaviour in the second example. In the first example, the preparser gets involved, which does not handle newlines in the same way. Indeed, you can get a syntax error by putting the newline in a slightly different position: You can see what happens if you look at what the preparser does: The rewriting only happens on the first line, regardless of whether that maintains proper syntax: it's a fairly basic regexp replacement. Ideally the preparser would actually PARSE, but that's not what it does. |

2020-03-03 15:55:01 -0500 | commented question | Error when using non ASCII characters as symbolic function name Using unicode in SR names is a recipe for disaster: these names get shipped to all kinds of interfaces. I would not expect those to react kindly to unicode identifiers. |

2020-02-28 14:04:00 -0500 | commented question | Kernel Crash That indicates there is something broken in your installation. The expected output is: The first thing to try is to reinstall sage, since this indicates something rather fundamental is broken (at least for the maxima/lisp subsystem that is used for simplification). If that doesn't help, you might get help by giving exact details about your operating system and the way you've installed sage. https://groups.google.com/forum/#!for... is probably a better forum to get help for this. |

2020-02-27 11:11:53 -0500 | answered a question | 20 monomials of degree 3 in 4 variables in lexicographic ordering A function to get a list of monomials of specified degree would be good to have in sage. Perhaps it is already by now. Otherwise it's not hard to define once you know which primitives to use: With this you can do: |

2020-02-25 12:16:08 -0500 | commented question | Performance Question You wouldn't be doing this on large groups, so I expect that the multiplication in In your example, |

2020-02-16 05:00:50 -0500 | received badge | ● Nice Answer (source) |

2020-02-15 14:02:40 -0500 | answered a question | Symbolic expression of `sng()` which isnβt zero at `sgn(0)` would do the trick ... |

2020-02-12 10:57:15 -0500 | commented answer | Error while creating augmented matrix: TypeError: unable to convert a to an integer Any "abstract algebra" book would work. For a "rings first" approach there is also Anderson-Feil's "A first course in abstract algebra", which is appropriate for an introctory course in the subject. |

2020-02-05 13:29:29 -0500 | commented answer | Sagemath 9.0 Markdown inconsistency Cocalc vs. Local That only works if you have |

2020-02-05 13:25:10 -0500 | answered a question | Sagemath 9.0 Markdown inconsistency Cocalc vs. Local It looks like this is a problem in the markdown processor for the standard Jupyter notebook server (so for sage, it's an upstream bug). The jupyter notebook server in cocalc is a custom one. The problem seems to be that the markdown for a single bold character doesn't get processed right if there are further bold markers: in |

2020-01-19 13:09:24 -0500 | commented answer | Automatically attach file on starting shell? I think you may want to use a different name in the |

2020-01-15 07:53:18 -0500 | received badge | ● Good Answer (source) |

2020-01-08 20:44:48 -0500 | commented question | Is it error in Sage or mwrank The more diplomatic ,specific, and constructive version of your "sage is terrible" would be: "It looks like there are many opportunities to make "E.gets()" succeed on a lot more elliptic crurves." It does look like a lot of the higher descent techniques (and 3-descent) that are available in magma, aren't available in sage. It's hard to find someone motivated to do the hard work again -- the first time (for the implementation in magma) the author got a nice paper out of it. That's hard to replicate for the person who'd implement these routines in sage. |

2020-01-08 07:27:39 -0500 | commented question | too complicated algebra => memory leak If an added assumption causes a crash consistent with running out of memory, then a likely explanation is that the extra assumption makes the program try some manipulations that might be a good idea in other situations, but in this situation leads to intermediate results that might not be practically representable. |

2020-01-08 04:06:21 -0500 | received badge | ● Nice Answer (source) |

2020-01-07 22:56:38 -0500 | answered a question | Is it error in Sage or mwrank The reason why this curve is a little problematic is because it has nontrivial Sha[2]. It would be fairly straightforward to get So the only thing to do is to prove that the point you found isn't divisible by any $n>1$. It is a little surprising that |

2020-01-07 11:50:53 -0500 | commented question | too complicated algebra => memory leak That error message means that the sage process HAS crashed and has been restarted for you. Everything you've done is now wiped from the kernel state, so you'll have to reexecute your initialization code. If your computer system gets into extreme memory shortage, it may have to do strange things. Look up OOM killer if you're interested. One result might be that your process just gets killed, without a clear trace of what happened (the memory shortage can prevent the system from even sending you a meaningful message). This is rare, but might be what you previously experienced. It doesn't look particularly fishy to me. Most of the behaviour you describe is consistent with a computer program running out of memory. |

2020-01-07 11:26:36 -0500 | commented answer | Should I avoid using unicode in names of variables? I would not be pleased if I were to be forced to type |

2020-01-06 23:02:08 -0500 | received badge | ● Good Answer (source) |

2020-01-06 22:56:03 -0500 | commented question | too complicated algebra => memory leak When I set a lowish memory limit with your code, I get a rather quick "segmentation fault". It looks like the code gets stuck in the limit computation, which gets done by maxima. The expression that you're taking the limit of is rather awful, so I suspect that maxima is simply running out of memory, trying to expand some horrible expression. The limit you're trying to compute is undoubtably computable, but you may have to go about it a little more carefully. |

2020-01-05 14:51:29 -0500 | received badge | ● Nice Answer (source) |

2020-01-05 02:36:00 -0500 | answered a question | Should I avoid using unicode in names of variables? See python's PEP-8 for the policy for python's standard library (identifiers must be ASCII) and PEP-3131 for the proposal that led to unicode identifiers being possible. Sage library code has more-or-less been following PEP-8, so I expect non-ascii identifiers will not be allowed there. What you do in your own files is your own concern (go wild and name your eigenvalue $\lambda$). Non-ascii unicode characters may be difficult to type (depending on keyboard layout) and they can be extremely confusing, because unicode contains different code-points that have (nearly) identical print-shapes. I'd be strongly in favour for keeping them out of library code. |

2020-01-04 11:32:38 -0500 | commented question | Lengths of preperiod and period of a rational number Ah, I see |

2020-01-04 05:18:28 -0500 | received badge | ● Nice Answer (source) |

2020-01-04 05:18:08 -0500 | received badge | ● Nice Answer (source) |

2020-01-03 21:42:34 -0500 | commented answer | Cython: undeclared name not builtin If you check the contents of |

2020-01-03 14:13:37 -0500 | commented answer | DeprecationWarning on SageCell (Python 3) Yes, it is unfortunate that Py2/Py3 have some incompatibilities. However, Py2 is now officially unsupported, so I don't think anyone running a public-facing SageCell server will be willing to run Py2 on it. SageCell already allows for different kernels, so setting it up with both 8.9 and 9.0 is technically definitely possible. The Ubuntu binary should become available soon now -- 9.0 has just come out. You can build from source if you don't want to wait for that (you'll be waiting for your local build to finish, though ...) |

2020-01-03 13:11:49 -0500 | answered a question | Cython: undeclared name not builtin It looks like you should: As you can see in the documentation of |

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.