ASKSAGE: Sage Q&A Forum - Latest question feedhttps://ask.sagemath.org/questions/Q&A Forum for SageenCopyright Sage, 2010. Some rights reserved under creative commons license.Fri, 10 Apr 2020 08:54:33 -0500Definition of symbolic functions on path algebrahttps://ask.sagemath.org/question/50655/definition-of-symbolic-functions-on-path-algebra/I tried to define a symbolic function on path algbera like that:
G = DiGraph({1:{2:['a']}, 2:{3:['b']}})
P = G.path_semigroup()
A = P.algebra(GF(7))
A.inject_variables()
def ev(self, x): return 2*x
foo = function("foo", nargs=1, eval_func=ev)
foo(a)
But I get an error: TypeError: cannot coerce arguments: no canonical coercion from Path algebra of Multi-digraph on 3 vertices over Finite Field of size 7 to Symbolic Ring. My question how can I define a symbolic function to accept path algebra variables?
Thanks.Z3r0Fri, 10 Apr 2020 08:54:33 -0500https://ask.sagemath.org/question/50655/How to put Sage in Env Path in Windowshttps://ask.sagemath.org/question/42035/how-to-put-sage-in-env-path-in-windows/I have installed Sage in windows 10 but for some reasons it's not in path. Running sage in cmd outputs: `'sage' is not recognized as an internal or external command, operable program or batch file.`.
I can't find sage.exe either to manually put it in path. What can I do?
The reason I need to have the path to sage.exe is because I want to use sagetex and it needs sage to be in path.
Currently, I' only able to produce .sout from sage by running sage manually and loading in the file manually. The sage that I'm loading has this full path:
`"C:\Program Files\SageMath 8.1\runtime\bin\mintty.exe" -t 'SageMath 8.1 Console' -i sagemath.ico /bin/bash --login -c '/opt/sagemath-8.1/sage'`
So I am not able to find sage.exe anywhere to automate this process possibly with latexmkrc.o6pSun, 15 Apr 2018 19:15:08 -0500https://ask.sagemath.org/question/42035/The interval I(u,v) between a pair of vertices u,v in graphhttps://ask.sagemath.org/question/35905/the-interval-iuv-between-a-pair-of-vertices-uv-in-graph/Hello Everyone,
I am really new to the sagemath and I need your help with finding the interval between **all pair of vertices** in a graph.
Def: In graph G, the Interval between a pair of vertices u and v is: I(u,v)={w|d(u,v)=d(u,w)+d(w,v)}
In other words, the interval between a pair of vertices u and v is : all vertices that lies on all shortest paths between them.
I want to find the interval between all pairs of vertices in graph. I do not know if such function already exists in sagemath or I do need to implement my own.
Thanks,
HakeemHakeemSat, 03 Dec 2016 15:44:40 -0600https://ask.sagemath.org/question/35905/get path of sage scripthttps://ask.sagemath.org/question/33053/get-path-of-sage-script/ Hi, I'm trying to cerate a sage script that will print it's location on the disk. the most of classical python solutions for this problem, like using the inspect module, doesn't work - they return me the location of temporary files (the files inside the directory which returned by the function tmp_dir() ) instead of the directory of the source file.
Thank you!zionnahiSun, 10 Apr 2016 15:04:28 -0500https://ask.sagemath.org/question/33053/How to plot lattice paths ?https://ask.sagemath.org/question/31910/how-to-plot-lattice-paths/I have seen that the command
for D in DyckWords(n):
D.pretty_print(type="NE-SE")
gives a nice plot of all Dyck paths.
Is there an analogous command for the set of all 2^n lattice paths of length n with up- and downsteps of height 1? Please give details, I am a newcomer to Sage.
Edit: Sorry if my question is not properly formulated. Perhaps I should modify my question somewhat:
The command
D = DyckWords(6)[3]
D.pretty_print(type="NE-SE")
gives a nice picture (which I unfortunately cannot copy)
of the Dyckpath corresponding to [1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0]
by interpreting 0 with a down-step and 1 with an up-step.
How can I print a corresponding picture for a word which corresponds to a path with negative values?
hansTue, 29 Dec 2015 02:30:07 -0600https://ask.sagemath.org/question/31910/Finding all shortest paths between given (specific) pair of verticeshttps://ask.sagemath.org/question/10332/finding-all-shortest-paths-between-given-specific-pair-of-vertices/I am working with graphs in sage and need a method of finding all shortest paths between some pair (or all pairs) of vertices.
Note that it is important to have all shortest paths registred, not just one, as seen in many Bellman-Ford/Dijkstra implementations (for instance Graph.shortest_path_all_pairs or networkx.algorithms.shortest_paths.all_pairs_shortest_path), and not just a number of those paths.
I am also satisfied with only a list of "optimal" predecessors... as long as the list is complete.
Thank you for answers!MorgothTue, 09 Jul 2013 00:45:53 -0500https://ask.sagemath.org/question/10332/Trouble running Sage in terminalhttps://ask.sagemath.org/question/23356/trouble-running-sage-in-terminal/ Hi all,
So I start up Sage using the command:
'/Applications/Sage-6.2.app/Contents/Resources/sage'/sage
I'm trying to load this file:
#mod.sage
precision = 30
m = ModularForms(Gamma0(12),10,prec = precision)
p = m.basis()
Unfortunately I get a very large error when I run the following command: attach("mod.sage") However when I comment out the line p = m.basis(), the error goes away. I'm attaching the text from the error message below. Any ideas on how to fix this would be greatly appreciated. Sorry for the sloppy formatting!
---------------------------------------------------------------------------
IOError Traceback (most recent call last)
<ipython-input-2-909b5a17cf48> in <module>()
----> 1 sage.misc.preparser.load(sage.misc.preparser.base64.b64decode("bW9kLnNhZ2U="),globals(),True)
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/misc/preparser.pyc in load(filename, globals, attach)
1753 else:
1754 raise IOError('did not find file %r in load / attach search path' \
-> 1755 % filename)
1756
1757 if fpath.endswith('.py'):
IOError: did not find file 'mod.sage' in load / attach search path
sage: cd /Users/brandonrayhaun/Desktop/Code/Sage
/Users/brandonrayhaun/Desktop/Code/Sage
sage: attach("mod.sage")
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-4-909b5a17cf48> in <module>()
----> 1 sage.misc.preparser.load(sage.misc.preparser.base64.b64decode("bW9kLnNhZ2U="),globals(),True)
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/misc/preparser.pyc in load(filename, globals, attach)
1767 # See Trac 11812.
1768 exec_file_is(fpath)
-> 1769 execfile(preparse_file_named(fpath), globals)
1770 else:
1771 # Preparse in memory only for speed.
/Users/brandonrayhaun/.sage/temp/anlwl151-059.wl.anl.gov/13637/mod.sageZRRz8A.py in <module>()
6 precision = _sage_const_30
7
----> 8 m = ModularForms(Gamma0(_sage_const_12 ),_sage_const_10 ,prec = precision)
9 # p = m.basis()
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modular/modform/constructor.pyc in ModularForms(group, weight, base_ring, use_cache, prec)
317 M = None
318 if arithgroup.is_Gamma0(group):
--> 319 M = ambient_g0.ModularFormsAmbient_g0_Q(group.level(), weight)
320 if base_ring != rings.QQ:
321 M = ambient_R.ModularFormsAmbient_R(M, base_ring)
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modular/modform/ambient_g0.pyc in __init__(self, level, weight)
41 <class 'sage.modular.modform.ambient_g0.ModularFormsAmbient_g0_Q_with_category'>
42 """
---> 43 ambient.ModularFormsAmbient.__init__(self, arithgroup.Gamma0(level), weight, rings.QQ)
44
45 ####################################################################
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modular/modform/ambient.pyc in __init__(self, group, weight, base_ring, character)
110
111 if character is None and arithgroup.is_Gamma0(group):
--> 112 character = dirichlet.TrivialCharacter(group.level(), base_ring)
113
114 space.ModularFormsSpace.__init__(self, group, weight, character, base_ring)
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modular/dirichlet.pyc in trivial_character(N, base_ring)
100 Ring of integers modulo 3
101 """
--> 102 return DirichletGroup(N, base_ring)(1)
103
104 TrivialCharacter = trivial_character
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/structure/factory.so in sage.structure.factory.UniqueFactory.__call__ (sage/structure/factory.c:1308)()
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/structure/factory.so in sage.structure.factory.UniqueFactory.get_object (sage/structure/factory.c:1510)()
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modular/dirichlet.pyc in create_object(self, version, key, **extra_args)
1812 """
1813 base_ring, modulus, zeta, zeta_order = key
-> 1814 return DirichletGroup_class(modulus, zeta, zeta_order)
1815
1816 DirichletGroup = DirichletGroupFactory("DirichletGroup")
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modular/dirichlet.pyc in __init__(self, modulus, zeta, zeta_order)
1862 self._zeta_dlog = v # dictionary that computes log_{zeta}(power of zeta).
1863 self._module = free_module.FreeModule(rings.IntegerModRing(zeta_order),
-> 1864 len(self._integers.unit_gens()))
1865
1866 def change_ring(self, R, zeta=None, zeta_order=None):
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/structure/factory.so in sage.structure.factory.UniqueFactory.__call__ (sage/structure/factory.c:1308)()
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/structure/factory.so in sage.structure.factory.UniqueFactory.get_object (sage/structure/factory.c:1510)()
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in create_object(self, version, key)
377
378 elif base_ring.is_field():
--> 379 return FreeModule_ambient_field(base_ring, rank, sparse=sparse)
380
381 elif base_ring in PrincipalIdealDomains():
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in __init__(self, base_field, dimension, sparse)
4940 Vector space of dimension 3 over Rational Field
4941 """
-> 4942 FreeModule_ambient_pid.__init__(self, base_field, dimension, sparse=sparse)
4943
4944 def _repr_(self):
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in __init__(self, base_ring, rank, sparse)
4861 Ambient free module of rank 3 over the principal ideal domain Integer Ring
4862 """
-> 4863 FreeModule_ambient_domain.__init__(self, base_ring=base_ring, rank=rank, sparse=sparse)
4864
4865 def _repr_(self):
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in __init__(self, base_ring, rank, sparse)
4677 Univariate Polynomial Ring in x over Finite Field of size 5
4678 """
-> 4679 FreeModule_ambient.__init__(self, base_ring, rank, sparse)
4680
4681 def _repr_(self):
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in __init__(self, base_ring, rank, sparse)
4152 Ambient free module of rank 4 over the principal ideal domain Integer Ring
4153 """
-> 4154 FreeModule_generic.__init__(self, base_ring, rank=rank, degree=rank, sparse=sparse)
4155
4156 def __hash__(self):
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in __init__(self, base_ring, rank, degree, sparse)
711 self.__is_sparse = sparse
712 self._gram_matrix = None
--> 713 self.element_class()
714
715 def construction(self):
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in element_class(self)
893 except AttributeError:
894 pass
--> 895 C = element_class(self.base_ring(), self.is_sparse())
896 self._element_class = C
897 return C
/Applications/Sage-6.2.app/Contents/Resources/sage/local/lib/python2.7/site-packages/sage/modules/free_module.pyc in element_class(R, is_sparse)
6689 <type 'sage.modules.free_module_element.FreeModuleElement_generic_dense'>
6690 """
-> 6691 import sage.modules.vector_real_double_dense
6692 import sage.modules.vector_complex_double_dense
6693
/Users/brandonrayhaun/Desktop/Code/Sage/vector_real_double_dense.pyx in init sage.modules.vector_real_double_dense (sage/modules/vector_real_double_dense.c:5611)()
/Users/brandonrayhaun/Desktop/Code/Sage/__init__.pxd in init sage.modules.vector_double_dense (sage/modules/vector_double_dense.c:11813)()
/Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/__init__.py in <module>()
141 return loader(*packages, **options)
142
--> 143 import add_newdocs
144 __all__ = ['add_newdocs']
145
/Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/add_newdocs.py in <module>()
7 # core/fromnumeric.py, core/defmatrix.py up-to-date.
8
----> 9 from numpy.lib import add_newdoc
10
11 ###############################################################################
/Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/lib/__init__.py in <module>()
2 from numpy.version import version as __version__
3
----> 4 from type_check import *
5 from index_tricks import *
6 from function_base import *
/Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/lib/type_check.py in <module>()
6 'common_type']
7
----> 8 import numpy.core.numeric as _nx
9 from numpy.core.numeric import asarray, asanyarray, array, isnan, \
10 obj2sctype, zeros
/Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/core/__init__.py in <module>()
3 from numpy.version import version as __version__
4
----> 5 import multiarray
6 import umath
7 import _internal # for freeze programs
ImportError: dlopen(/Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/core/multiarray.so, 2): Symbol not found: _PyUnicodeUCS2_AsASCIIString
Referenced from: /Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/core/multiarray.so
Expected in: flat namespace
in /Users/brandonrayhaun/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/numpy/core/multiarray.so
brandonrayhaunThu, 10 Jul 2014 15:53:38 -0500https://ask.sagemath.org/question/23356/$HOME is not set when calling through sage -python and PHPhttps://ask.sagemath.org/question/10963/home-is-not-set-when-calling-through-sage-python-and-php/I am making a PHP exec() call to a python script that imports sage. sage -python executes it, but thinks that $HOME is not set. The user for Apache is www-data, and /var/www is set in the passwd file for it's home path.
Here is the error from sage in my Apache error.log:
Error: environment variable $HOME is not set.
Error setting environment variables by sourcing '/usr/lib/sagemath/spkg/bin/sage-env'; possibly contact sage-devel
HOME is set for the user executing the script (www-data) and is set to /var/www, so when www-data executes it, $HOME should be set yes? Is this a setting I'm missing in my sage-env?
Thank you in advance!kasualsSun, 26 Jan 2014 18:33:36 -0600https://ask.sagemath.org/question/10963/specifying the R executablehttps://ask.sagemath.org/question/9962/specifying-the-r-executable/I want to have Sage use the executable of R that's already on my machine instead of the one that comes with it (it's newer, already has all my packages installed, etc). How do I configure Sage to run that version of R by default?kjd45Tue, 23 Jul 2013 06:35:11 -0500https://ask.sagemath.org/question/9962/Running Sage from the commad line in Ubuntu 12.04https://ask.sagemath.org/question/9650/running-sage-from-the-commad-line-in-ubuntu-1204/I'm relatively new to Sage and to GNU/ Linux. Sorry in advance if this question seem silly. But I need to learn how to do this. Here is my problem:
I have Sage installed from source in /usr/local/src. So every time I want to run Sage I have to type on the terminal
$ cd /usr/local/src/sage-5.4.1/
and once inside this directory, I have to type
./sage
How can I start Sage directly at the prompt $ just by typing "sage"?
Thanks a lot for the answer.
jdiosesTue, 25 Dec 2012 13:00:15 -0600https://ask.sagemath.org/question/9650/SageTeX on Linux. pdflatex isn't running Sagehttps://ask.sagemath.org/question/9246/sagetex-on-linux-pdflatex-isnt-running-sage/I manually installed Sage into ~/sage-5.2 (i.e. not using my distro's package management tool).
I included in my LaTeX document the example of plotting a sine wave into my .tex file (from the tutorial). When I run pdflatex on it, I get:
> Package sagetex Warning: Graphics file sage-plots-for-statistics.tex/plot-0.png
> on page 3 does not exist. Plot command is on input line 129.
> Package sagetex Warning: there were undefined Sage formulas and/or plots.
> Run Sage on statistics.sagetex.sage, and then run LaTeX on statistics.tex again
It's clear it's not running Sage. It generates the .sage file, though.
I included ~/sage-5.2 into my path, as well as ~/sage-5.2/local/bin/ and it still doesn't pick Sage up.
Ideas?Beetle B.Thu, 16 Aug 2012 05:41:49 -0500https://ask.sagemath.org/question/9246/How to find the path of the maximal distance between two vertices on a complete digraph?https://ask.sagemath.org/question/9000/how-to-find-the-path-of-the-maximal-distance-between-two-vertices-on-a-complete-digraph/I was wondering how can I find the path of the maximal distance between two vertices on a complete digraph.
Suppose the digraph has 5 vertices:
`sage: g = graphs.CompleteGraph(5).to_directed()`
I have seen a [maximal flow](http://www.sagemath.org/doc/thematic_tutorials/linear_programming.html#flows) example which is nice but it is not the same type of problem. How can I use sage to find the longest path?
MaelstromYamatoFri, 25 May 2012 07:06:58 -0500https://ask.sagemath.org/question/9000/Function value at parametric pathhttps://ask.sagemath.org/question/8897/function-value-at-parametric-path/Hi,
How can I get the value of a 2D function, say f(x,y)=x^3+y^3, along the path determined by a parametric function, say M(x(t)=cos(t),y(t)=sint(t))?
sagembFri, 20 Apr 2012 03:59:08 -0500https://ask.sagemath.org/question/8897/How do do more complex shell commands in Sage?https://ask.sagemath.org/question/8266/how-do-do-more-complex-shell-commands-in-sage/According to [the tutorial](http://www.sagemath.org/doc/tutorial/interactive_shell.html), I can do things like `!ls` inside the Sage shell (in fact, here `ls` works).
But
echo $PATH
doesn't work whether I prepend a `!`, put it in quotes, whatever. How do I get such things to work, if at all? Is `PATH` just not defined in the Sage session?
(Secondarily, I'm trying to figure out how to put things in a path of a Sage session; `sys.path` seems to be the place to do it, but I'm not 100% sure of that.)kcrismanTue, 09 Aug 2011 05:38:25 -0500https://ask.sagemath.org/question/8266/