Re: [sage-devel] Re: VOTE: move Sage development to Github

2022-10-05 Thread Mike Zabrocki
-1

On Tuesday, 4 October 2022 at 19:06:07 UTC-4 David Roe wrote:

> Just a reminder that voting ends tomorrow (noon EDT, 16:00 UTC), so if 
> you've been putting off voting you should do so now.
> David
>
> On Tue, Oct 4, 2022 at 7:39 AM Alex J Best  wrote:
>
>> +1 for github
>>
>> On Wednesday, September 21, 2022 at 7:23:36 PM UTC+2 David Roe wrote:
>>
>>> Dear Sage developers,
>>> Following extensive discussion, both recently 
>>>  
>>> (prompted 
>>> by issues upgrading the trac server) and over 
>>>  
>>> the 
>>>  
>>> last 
>>>  
>>> decade 
>>> , 
>>> we are calling a vote on switching Sage development from Trac 
>>>  to Github .  
>>> We've created a summary of the pros and cons of each system 
>>> , a 
>>> description 
>>> of the development model to be used on github 
>>> , 
>>> and a trac ticket  for 
>>> coordinating work on the transition.  More work will need to be done to 
>>> carry out the actual transition once voting is complete.
>>>
>>> The voting will last until noon Eastern time (16:00 UTC) on Wednesday, 
>>> October 5.  Please use this thread only for sending votes, to make it 
>>> easier to count them afterward; there is a parallel thread where you can 
>>> make arguments in favor of either system.
>>>
>>> Finally, I will close with a plea to be involved in this vote and 
>>> discussion even if you are not a core Sage developer.  By definition, core 
>>> Sage developers have become comfortable with trac, and I think that one of 
>>> the major arguments in favor of github is that it will help bring in new 
>>> contributors who are not familiar with Sage's development workfow 
>>> .  Anyone who 
>>> has ever contributed to the Sage code base or who maintains a Sage user 
>>> package is welcome to vote.
>>> David
>>>
>> -- 
>>
> You received this message because you are subscribed to the Google Groups 
>> "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to sage-devel+...@googlegroups.com.
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/sage-devel/c2402862-5a03-41c7-8e0b-06ecdf7a19f9n%40googlegroups.com
>>  
>> 
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/062dcdcc-a41f-45c1-a42e-79b9f742e05en%40googlegroups.com.


Re: [sage-devel] upgrading to latest stable version

2020-06-01 Thread Mike Zabrocki
@Dima
Thanks, that seems to have worked.
So what I did was try to reinstall gmp through brew (I couldn't uninstall 
it because it is required by other packages).
It refused to allow me to reinstall without first removing some copies of 
the gmp header files that were in /usr/local/share
because it seems that it was using these copies. So where I previously I 
saw the statements:

checking gmpxx.h usability... no

checking gmpxx.h presence... no
and these were "yes" when it finally did compile completely.

@John: yes I did follow the suggestions at the end of running configure.

Thanks,
-Mike

On Monday, 1 June 2020 07:38:10 UTC-4, Dima Pasechnik wrote:
>
> you have a lot of stuff in /usr/local/opt, e.g. gmp, but some of it is 
> broken, e.g. in your config.log one sees 
>
> ## - ## 
> ## Checking whether SageMath should install SPKG mpir... ## 
> ## - ## 
> configure:10249: checking gmp.h usability 
> configure:10249: g++ -std=gnu++11 -c -g -O2  conftest.cpp >&5 
> configure:10249: $? = 0 
> configure:10249: result: yes 
> configure:10249: checking gmp.h presence 
> configure:10249: g++ -E -std=gnu++11  conftest.cpp 
> configure:10249: $? = 0 
> configure:10249: result: yes 
> configure:10249: checking for gmp.h 
> configure:10249: result: yes 
> configure:10257: checking gmpxx.h usability 
> configure:10257: g++ -std=gnu++11 -c -g -O2  conftest.cpp >&5 
> conftest.cpp:56:10: fatal error: 'gmpxx.h' file not found 
> #include  
>  ^ 
> 1 error generated. 
>
> Can you fix them? (probably they are from Homebrew?) 
> Have a look at 
> https://doc.sagemath.org/html/en/installation/source.html#macos-recommended-installation
>  
> for details, in particular .homebrew-build-env needs to be sourced. 
>
>
> Or remove them, they cause conflicts, most probably. 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/8e70ee7c-e02a-49bd-a9ab-f40cbe575e4c%40googlegroups.com.


Re: [sage-devel] upgrading to latest stable version

2020-06-01 Thread Mike Zabrocki
I switched to the develop branch and ran into the same problem.
Could this be a conflict with OSX 10.15.5?  I installed the update to the 
system recently.

Thanks,
-Mike

On Sunday, 31 May 2020 15:36:49 UTC-4, Mike Zabrocki wrote:
>
> I had started with a make distclean but then by installing a few things I 
> thought I should start over again.  Did a "make distclean" and a "make" 
> again with the same results.
>
> Here is my config.log file:
> http://garsia.math.yorku.ca/~zabrocki/config.log 
> <http://www.google.com/url?q=http%3A%2F%2Fgarsia.math.yorku.ca%2F~zabrocki%2Fconfig.log=D=1=AFQjCNGtwqiF2jT11UOyAtNZmmYp2RbCKQ>
>
> I'm not (intentionally) doing something unusual.
>
> Thanks,
> -Mike
>
> On Sunday, 31 May 2020 14:31:48 UTC-4, Dima Pasechnik wrote:
>>
>> please post the main config.log
>>
>> are you trying to do something unusual, like using mpir instead of gmp?
>>
>> is it a build from scratch?
>>
>> (make distclean
>> helps most problems we see)
>>
>>
>> On Sun, 31 May 2020, 18:37 Mike Zabrocki,  wrote:
>>
>>> Hi,
>>>
>>> I'm trying to compile the latest stable version and it keeps getting 
>>> stuck at the pplpy package.
>>> Can someone tell me how to get around this?
>>>
>>> I'm installing on Mac OSX 10.15.5
>>>
>>> Log file is at:
>>> http://garsia.math.yorku.ca/~zabrocki/pplpy-0.8.4.log
>>>
>>> Thanks,
>>> -Mike
>>>
>>> ***
>>>
>>> Error building Sage.
>>>
>>>
>>> The following package(s) may have failed to build (not necessarily
>>>
>>> during this run of 'make all-start'):
>>>
>>>
>>> * package: pplpy-0.8.4
>>>
>>>   last build time: May 31 13:26
>>>
>>>   log file:/Applications/sage/logs/pkgs/pplpy-0.8.4.log
>>>
>>>   build directory: 
>>> /Applications/sage/local/var/tmp/sage/build/pplpy-0.8.4
>>>
>>>
>>> It is safe to delete any log files and build directories, but they
>>>
>>> contain information that is helpful for debugging build problems.
>>>
>>> WARNING: If you now run 'make' again, the build directory of the
>>>
>>> same version of the package will, by default, be deleted. Set the
>>>
>>> environment variable SAGE_KEEP_BUILT_SPKGS=yes to prevent this.
>>>
>>>
>>> make[1]: *** [all-start] Error 1
>>>
>>> make: *** [all] Error 2
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "sage-devel" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to sage-...@googlegroups.com.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/sage-devel/cc492bac-a564-49f6-941b-60d19741ccf7%40googlegroups.com
>>>  
>>> <https://groups.google.com/d/msgid/sage-devel/cc492bac-a564-49f6-941b-60d19741ccf7%40googlegroups.com?utm_medium=email_source=footer>
>>> .
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/9c3bc393-b402-4d62-9c06-133813a3fd3e%40googlegroups.com.


Re: [sage-devel] upgrading to latest stable version

2020-05-31 Thread Mike Zabrocki
I had started with a make distclean but then by installing a few things I 
thought I should start over again.  Did a "make distclean" and a "make" 
again with the same results.

Here is my config.log file:
http://garsia.math.yorku.ca/~zabrocki/config.log

I'm not (intentionally) doing something unusual.

Thanks,
-Mike

On Sunday, 31 May 2020 14:31:48 UTC-4, Dima Pasechnik wrote:
>
> please post the main config.log
>
> are you trying to do something unusual, like using mpir instead of gmp?
>
> is it a build from scratch?
>
> (make distclean
> helps most problems we see)
>
>
> On Sun, 31 May 2020, 18:37 Mike Zabrocki,  > wrote:
>
>> Hi,
>>
>> I'm trying to compile the latest stable version and it keeps getting 
>> stuck at the pplpy package.
>> Can someone tell me how to get around this?
>>
>> I'm installing on Mac OSX 10.15.5
>>
>> Log file is at:
>> http://garsia.math.yorku.ca/~zabrocki/pplpy-0.8.4.log
>>
>> Thanks,
>> -Mike
>>
>> ***
>>
>> Error building Sage.
>>
>>
>> The following package(s) may have failed to build (not necessarily
>>
>> during this run of 'make all-start'):
>>
>>
>> * package: pplpy-0.8.4
>>
>>   last build time: May 31 13:26
>>
>>   log file:/Applications/sage/logs/pkgs/pplpy-0.8.4.log
>>
>>   build directory: 
>> /Applications/sage/local/var/tmp/sage/build/pplpy-0.8.4
>>
>>
>> It is safe to delete any log files and build directories, but they
>>
>> contain information that is helpful for debugging build problems.
>>
>> WARNING: If you now run 'make' again, the build directory of the
>>
>> same version of the package will, by default, be deleted. Set the
>>
>> environment variable SAGE_KEEP_BUILT_SPKGS=yes to prevent this.
>>
>>
>> make[1]: *** [all-start] Error 1
>>
>> make: *** [all] Error 2
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "sage-devel" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to sage-...@googlegroups.com .
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/sage-devel/cc492bac-a564-49f6-941b-60d19741ccf7%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/sage-devel/cc492bac-a564-49f6-941b-60d19741ccf7%40googlegroups.com?utm_medium=email_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/3fc8dea8-ab74-410a-8216-494c9f059a15%40googlegroups.com.


[sage-devel] upgrading to latest stable version

2020-05-31 Thread Mike Zabrocki
Hi,

I'm trying to compile the latest stable version and it keeps getting stuck 
at the pplpy package.
Can someone tell me how to get around this?

I'm installing on Mac OSX 10.15.5

Log file is at:
http://garsia.math.yorku.ca/~zabrocki/pplpy-0.8.4.log

Thanks,
-Mike

***

Error building Sage.


The following package(s) may have failed to build (not necessarily

during this run of 'make all-start'):


* package: pplpy-0.8.4

  last build time: May 31 13:26

  log file:/Applications/sage/logs/pkgs/pplpy-0.8.4.log

  build directory: /Applications/sage/local/var/tmp/sage/build/pplpy-0.8.4


It is safe to delete any log files and build directories, but they

contain information that is helpful for debugging build problems.

WARNING: If you now run 'make' again, the build directory of the

same version of the package will, by default, be deleted. Set the

environment variable SAGE_KEEP_BUILT_SPKGS=yes to prevent this.


make[1]: *** [all-start] Error 1

make: *** [all] Error 2

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/cc492bac-a564-49f6-941b-60d19741ccf7%40googlegroups.com.


Re: [sage-devel] CentOS installation problems

2019-11-13 Thread Mike Zabrocki
Its hard to make the installation foolproof and it is maybe not worth it if 
I am the only one, but I would vote yes for this change.  Or maybe a 
warning on certain linux versions? I spent a day ensuring that it wasn't 
something that I could figure out myself before I posted my question here.  
I agree that the old version of CentOS is the source of the problem, so 
I'll try to upgrade that in the near future.

-Mike

On Wednesday, 13 November 2019 12:18:48 UTC-5, Dima Pasechnik wrote:
>
> On Wed, Nov 13, 2019 at 4:46 PM Mike Zabrocki  > wrote: 
> > 
> > The suppression of the system zlib and bzip2 worked and it compiled. 
>
> Thanks, and sorry it took so many iterations. 
> But it is also insane on CentOS side to provide very old zlib and 
> bzip2  - mind you, bzip2 
> version 1.0.6, the one required by R, has been released in  2010, and 
> we are in 2019 now. 
>
> It would be not too hard to add version tests for zlib and bzip2, I 
> just wonder whether it's worth the trouble. 
>
> > 
> > Thanks. 
> > -Mike 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "sage-devel" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to sage-...@googlegroups.com . 
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sage-devel/aa01770a-5ad9-4536-9cab-11fd116777b5%40googlegroups.com.
>  
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/c42f4504-6e84-4f45-b249-fbe950d49db4%40googlegroups.com.


Re: [sage-devel] CentOS installation problems

2019-11-13 Thread Mike Zabrocki
The suppression of the system zlib and bzip2 worked and it compiled.

Thanks.
-Mike

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/aa01770a-5ad9-4536-9cab-11fd116777b5%40googlegroups.com.


Re: [sage-devel] CentOS installation problems

2019-11-13 Thread Mike Zabrocki
Hmmm.  This is better because matplotlib is compiling, but R is not 
compiling because of an old version of bzip2.

I'm trying:
./configure --without-system-bzip2

and then make.

-Mike

On Tuesday, 12 November 2019 22:35:57 UTC-5, Mike Zabrocki wrote:
>
> Hi Dima,
>
> It didn't fix the problem, but that may be because it didn't start with a 
> clean build.  I'll let it run overnight and let you know what I get 
> tomorrow.
>
> -Mike
>
> On Tuesday, 12 November 2019 14:04:03 UTC-5, Dima Pasechnik wrote:
>
> I believe that running 
>
> ./configure --without-system-zlib 
>
> followed by 
>
> make 
>
> should allow all these errors to go away. Please try this. 
>
> On Tue, Nov 12, 2019 at 6:51 PM Mike Zabrocki  
> wrote: 
> > 
> > Clearly I missed the typo.  Here is the output of the 4 commands that 
> are failing now (but this is after the "./configure --without-system-zlib") 
> > and I am attaching the 4 log files and the config.log file. 
> > 
> > [zabrocki@algebra sage-8.9]$ make freetype-clean 
> > 
> > make build/make/Makefile --stop 
> > 
> > make[1]: Entering directory `/usr/local/sage-8.9' 
> > 
> > make[1]: `build/make/Makefile' is up to date. 
> > 
> > make[1]: Leaving directory `/usr/local/sage-8.9' 
> > 
> > build/bin/sage-logger \ 
> > 
> > "cd build/make && ./install 'freetype-clean'" logs/install.log 
> > 
> > make[1]: Entering directory `/usr/local/sage-8.9/build/make' 
> > 
> > make[1]: Leaving directory `/usr/local/sage-8.9/build/make' 
> > 
> > *** ALL ENVIRONMENT VARIABLES BEFORE BUILD: *** 
> > 
> > } 
> > 
> > BASH_FUNC_module()=() {  eval `/usr/bin/modulecmd bash $*` 
> > 
> > _=/bin/env 
> > 
> > CONFIGURED_CC=gcc 
> > 
> > CONFIGURED_CXX=g++ 
> > 
> > CONFIGURED_FC=gfortran 
> > 
> > CONFIGURED_OBJC=gcc 
> > 
> > CONFIGURED_OBJCXX=g++ 
> > 
> > CVS_RSH=ssh 
> > 
> > G_BROKEN_FILENAMES=1 
> > 
> > HISTCONTROL=ignoredups 
> > 
> > HISTSIZE=1000 
> > 
> > HOME=/home/zabrocki 
> > 
> > HOSTNAME=algebra.math.yorku.ca 
> > 
> > LANG=en_US.UTF-8 
> > 
> > LESSOPEN=||/usr/bin/lesspipe.sh %s 
> > 
> > LOADEDMODULES= 
> > 
> > LOGNAME=zabrocki 
> > 
> > 
> LS_COLORS=rs=0:di=38;5;27:ln=38;5;51:mh=44;38;5;15:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=05;48;5;232;38;5;15:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;34:*.tar=38;5;9:*.tgz=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.Z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lz=38;5;9:*.xz=38;5;9:*.bz2=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.bz=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.rar=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.axv=38;5;13:*.anx=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.axa=38;5;45:*.oga=38;5;45:*.spx=38;5;45:*.xspf=38;5;45:
>  
>
> > 
> > MAIL=/var/spool/mail/zabrocki 
> > 
> > MAKEFLAGS= V=1 
> > 
> > MAKELEVEL=1 
> > 
> > MAKE=make 
> > 
> > MFLAGS= 
> > 
> > MODULEPATH=/usr/share/Modules/modulefiles:/etc/modulefiles 
> > 
> > MODULESHOME=/usr/share/Modules 
> > 
> > 
> PATH=/usr/local/sage-8.9/build/bin:/usr/local/sage-8.9/src/bin:/usr/local/sage-8.9/local/bin:.:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/openv/netbackup/bin:/opt/dell/srvadmin/bin:/opt/webwork/webwork2/bin:/home/zabrocki/bin
>  
>
> > 
> > PG_ROOT=/opt/webwork/pg 
> > 
> > PWD=/usr/local/sage-8.9/build/make 
> > 
> > PYTHONPATH=/usr/local/sage-8.9/local 
> > 
> > QTDIR=/usr/lib64/qt-3.3 
> > 
> > QTIN

Re: [sage-devel] CentOS installation problems

2019-11-12 Thread Mike Zabrocki
Hi Dima,

It didn't fix the problem, but that may be because it didn't start with a 
clean build.  I'll let it run overnight and let you know what I get 
tomorrow.

-Mike

On Tuesday, 12 November 2019 14:04:03 UTC-5, Dima Pasechnik wrote:
>
> I believe that running 
>
> ./configure --without-system-zlib 
>
> followed by 
>
> make 
>
> should allow all these errors to go away. Please try this. 
>
> On Tue, Nov 12, 2019 at 6:51 PM Mike Zabrocki  > wrote: 
> > 
> > Clearly I missed the typo.  Here is the output of the 4 commands that 
> are failing now (but this is after the "./configure --without-system-zlib") 
> > and I am attaching the 4 log files and the config.log file. 
> > 
> > [zabrocki@algebra sage-8.9]$ make freetype-clean 
> > 
> > make build/make/Makefile --stop 
> > 
> > make[1]: Entering directory `/usr/local/sage-8.9' 
> > 
> > make[1]: `build/make/Makefile' is up to date. 
> > 
> > make[1]: Leaving directory `/usr/local/sage-8.9' 
> > 
> > build/bin/sage-logger \ 
> > 
> > "cd build/make && ./install 'freetype-clean'" logs/install.log 
> > 
> > make[1]: Entering directory `/usr/local/sage-8.9/build/make' 
> > 
> > make[1]: Leaving directory `/usr/local/sage-8.9/build/make' 
> > 
> > *** ALL ENVIRONMENT VARIABLES BEFORE BUILD: *** 
> > 
> > } 
> > 
> > BASH_FUNC_module()=() {  eval `/usr/bin/modulecmd bash $*` 
> > 
> > _=/bin/env 
> > 
> > CONFIGURED_CC=gcc 
> > 
> > CONFIGURED_CXX=g++ 
> > 
> > CONFIGURED_FC=gfortran 
> > 
> > CONFIGURED_OBJC=gcc 
> > 
> > CONFIGURED_OBJCXX=g++ 
> > 
> > CVS_RSH=ssh 
> > 
> > G_BROKEN_FILENAMES=1 
> > 
> > HISTCONTROL=ignoredups 
> > 
> > HISTSIZE=1000 
> > 
> > HOME=/home/zabrocki 
> > 
> > HOSTNAME=algebra.math.yorku.ca 
> > 
> > LANG=en_US.UTF-8 
> > 
> > LESSOPEN=||/usr/bin/lesspipe.sh %s 
> > 
> > LOADEDMODULES= 
> > 
> > LOGNAME=zabrocki 
> > 
> > 
> LS_COLORS=rs=0:di=38;5;27:ln=38;5;51:mh=44;38;5;15:pi=40;38;5;11:so=38;5;13:do=38;5;5:bd=48;5;232;38;5;11:cd=48;5;232;38;5;3:or=48;5;232;38;5;9:mi=05;48;5;232;38;5;15:su=48;5;196;38;5;15:sg=48;5;11;38;5;16:ca=48;5;196;38;5;226:tw=48;5;10;38;5;16:ow=48;5;10;38;5;21:st=48;5;21;38;5;15:ex=38;5;34:*.tar=38;5;9:*.tgz=38;5;9:*.arj=38;5;9:*.taz=38;5;9:*.lzh=38;5;9:*.lzma=38;5;9:*.tlz=38;5;9:*.txz=38;5;9:*.zip=38;5;9:*.z=38;5;9:*.Z=38;5;9:*.dz=38;5;9:*.gz=38;5;9:*.lz=38;5;9:*.xz=38;5;9:*.bz2=38;5;9:*.tbz=38;5;9:*.tbz2=38;5;9:*.bz=38;5;9:*.tz=38;5;9:*.deb=38;5;9:*.rpm=38;5;9:*.jar=38;5;9:*.rar=38;5;9:*.ace=38;5;9:*.zoo=38;5;9:*.cpio=38;5;9:*.7z=38;5;9:*.rz=38;5;9:*.jpg=38;5;13:*.jpeg=38;5;13:*.gif=38;5;13:*.bmp=38;5;13:*.pbm=38;5;13:*.pgm=38;5;13:*.ppm=38;5;13:*.tga=38;5;13:*.xbm=38;5;13:*.xpm=38;5;13:*.tif=38;5;13:*.tiff=38;5;13:*.png=38;5;13:*.svg=38;5;13:*.svgz=38;5;13:*.mng=38;5;13:*.pcx=38;5;13:*.mov=38;5;13:*.mpg=38;5;13:*.mpeg=38;5;13:*.m2v=38;5;13:*.mkv=38;5;13:*.ogm=38;5;13:*.mp4=38;5;13:*.m4v=38;5;13:*.mp4v=38;5;13:*.vob=38;5;13:*.qt=38;5;13:*.nuv=38;5;13:*.wmv=38;5;13:*.asf=38;5;13:*.rm=38;5;13:*.rmvb=38;5;13:*.flc=38;5;13:*.avi=38;5;13:*.fli=38;5;13:*.flv=38;5;13:*.gl=38;5;13:*.dl=38;5;13:*.xcf=38;5;13:*.xwd=38;5;13:*.yuv=38;5;13:*.cgm=38;5;13:*.emf=38;5;13:*.axv=38;5;13:*.anx=38;5;13:*.ogv=38;5;13:*.ogx=38;5;13:*.aac=38;5;45:*.au=38;5;45:*.flac=38;5;45:*.mid=38;5;45:*.midi=38;5;45:*.mka=38;5;45:*.mp3=38;5;45:*.mpc=38;5;45:*.ogg=38;5;45:*.ra=38;5;45:*.wav=38;5;45:*.axa=38;5;45:*.oga=38;5;45:*.spx=38;5;45:*.xspf=38;5;45:
>  
>
> > 
> > MAIL=/var/spool/mail/zabrocki 
> > 
> > MAKEFLAGS= V=1 
> > 
> > MAKELEVEL=1 
> > 
> > MAKE=make 
> > 
> > MFLAGS= 
> > 
> > MODULEPATH=/usr/share/Modules/modulefiles:/etc/modulefiles 
> > 
> > MODULESHOME=/usr/share/Modules 
> > 
> > 
> PATH=/usr/local/sage-8.9/build/bin:/usr/local/sage-8.9/src/bin:/usr/local/sage-8.9/local/bin:.:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/openv/netbackup/bin:/opt/dell/srvadmin/bin:/opt/webwork/webwork2/bin:/home/zabrocki/bin
>  
>
> > 
> > PG_ROOT=/opt/webwork/pg 
> > 
> > PWD=/usr/local/sage-8.9/build/make 
> > 
> > PYTHONPATH=/usr/local/sage-8.9/local 
> > 
> > QTDIR=/usr/lib64/qt-3.3 
> > 
> > QTINC=/usr/lib64/qt-3.3/include 
> > 
> > QTLIB=/usr/lib64/qt-3.3/lib 
> > 
> > SAGE_ARB_LIBRARY=arb 
> > 
> > SAGE_BROWSER=firefox 
> > 
> > SAGE_CONFIGURE_FLINT=--with-flint=/usr/local/sage-8.9/local 
> > 
> > SAGE_CONFIGURE_GMP=--w

Re: [sage-devel] CentOS installation problems

2019-11-12 Thread Mike Zabrocki
> could you please post  the output of
> pkg-config --modversion zlib

Its returning "1.2.3"

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/dfd2fa5c-4d1b-42d9-aed1-f0d0218d579e%40googlegroups.com.


Re: [sage-devel] CentOS installation problems

2019-11-12 Thread Mike Zabrocki
So make freetype-clean
returns:

make build/make/Makefile --stop

make[1]: Entering directory `/usr/local/sage-8.9'

make[1]: `build/make/Makefile' is up to date.

make[1]: Leaving directory `/usr/local/sage-8.9'

build/bin/sage-logger \

"cd build/make && ./install 'freetype-clean'" logs/install.log

make[1]: Entering directory `/usr/local/sage-8.9/build/make'

make[1]: Leaving directory `/usr/local/sage-8.9/build/make'

*** ALL ENVIRONMENT VARIABLES BEFORE BUILD: ***

}

BASH_FUNC_module()=() {  eval `/usr/bin/modulecmd bash $*`

_=/bin/env

CONFIGURED_CC=gcc

CONFIGURED_CXX=g++

CONFIGURED_FC=gfortran

CONFIGURED_OBJC=gcc

CONFIGURED_OBJCXX=g++

CVS_RSH=ssh

G_BROKEN_FILENAMES=1

HISTCONTROL=ignoredups

HISTSIZE=1000

...

***

make[1]: Entering directory `/usr/local/sage-8.9/build/make'

sage-spkg-uninstall  freetype '/usr/local/sage-8.9/local'

Package 'freetype' is currently not installed

No legacy uninstaller found for 'freetype'; nothing to do

make[1]: Leaving directory `/usr/local/sage-8.9/build/make'


real 0m0.080s

user 0m0.060s

sys 0m0.018s

Sage build/upgrade complete!

The version is "CentOS release 6.10"
If the problem is that is too old, then I'll start by upgrading the OS.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/ba38218f-4877-4e42-8988-41eb8ada9486%40googlegroups.com.
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by Sage configure 8.9, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./configure 

## - ##
## Platform. ##
## - ##

hostname = algebra.math.yorku.ca
uname -m = x86_64
uname -r = 2.6.32-754.23.1.el6.centos.plus.x86_64
uname -s = Linux
uname -v = #1 SMP Thu Sep 26 11:58:20 UTC 2019

/usr/bin/uname -p = unknown
/bin/uname -X = unknown

/bin/arch  = x86_64
/usr/bin/arch -k   = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo  = unknown
/bin/machine   = unknown
/usr/bin/oslevel   = unknown
/bin/universe  = unknown

PATH: .
PATH: /usr/local/bin
PATH: /bin
PATH: /usr/bin
PATH: /usr/local/sbin
PATH: /usr/sbin
PATH: /sbin


## --- ##
## Core tests. ##
## --- ##

configure:3069: checking for a BSD-compatible install
configure:3137: result: /usr/bin/install -c
configure:3148: checking whether build environment is sane
configure:3203: result: yes
configure:3354: checking for a thread-safe mkdir -p
configure:3393: result: /bin/mkdir -p
configure:3400: checking for gawk
configure:3416: found /bin/gawk
configure:3427: result: gawk
configure:3438: checking whether make sets $(MAKE)
configure:3460: result: yes
configure:3489: checking whether make supports nested variables
configure:3506: result: yes
configure:3635: checking whether to enable maintainer-specific portions of 
Makefiles
configure:3644: result: yes
configure:3686: checking for root user
configure:3695: result: no
configure:3706: checking build system type
configure:3720: result: x86_64-pc-linux-gnu
configure:3740: checking host system type
configure:3753: result: x86_64-pc-linux-gnu
configure:3865: checking for a sed that does not truncate output
configure:3929: result: /bin/sed
configure:3937: checking for ar
configure:3953: found /usr/bin/ar
configure:3965: result: yes
configure:3986: checking for m4
configure:4002: found /usr/bin/m4
configure:4014: result: yes
configure:4089: checking for pkg-config
configure:4107: found /usr/bin/pkg-config
configure:4119: result: /usr/bin/pkg-config
configure:4144: checking pkg-config is at least version 0.9.0
configure:4147: result: yes
configure:4158: checking for ranlib
configure:4174: found /usr/bin/ranlib
configure:4186: result: yes
configure:4207: checking for strip
configure:4223: found /usr/bin/strip
configure:4235: result: yes
configure:4255: checking for GNU or BSD tar
configure:4303: result: /bin/tar
configure:4314: checking for GNU make
configure:4356: result: /usr/bin/make
configure:4370: checking for latex
configure:4386: found /usr/bin/latex
configure:4398: result: yes
configure:4422: checking for perl
configure:4440: found /usr/bin/perl
configure:4452: result: /usr/bin/perl
configure:4460: checking for Perl version 5.8.0 or later
configure:4471: result: yes
configure:4533: checking for gcc
configure:4549: found /usr/bin/gcc
configure:4560: result: gcc
configure:4789: checking for C compiler version
configure:4798: gcc --version >&5
gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-23)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR 

[sage-devel] CentOS installation problems

2019-11-12 Thread Mike Zabrocki
Hi,

I'm having trouble compiling Sage on a CentOS linux machine.
The problem seems to be in compiling matplotlib and R.

I'm attaching the log files here.
matplotlib seems to complain that I need to install freetype-devel and 
pkg-config with yum but I did that and yum returns
"Package freetype-devel-2.3.11-17.el6.x86_64 already installed and latest 
version"
"Package 1:pkgconfig-0.23-9.1.el6.x86_64 already installed and latest 
version"

while R is complaining that something about zlib isn't available.  So again 
I installed zlib and zlib-devel with yum
and both were already installed.

I'm attaching the log files for matplotlib and R.

Any help is greatly appreciated.

Thanks,
-Mike


-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/2d33c195-18be-49ca-b634-00864feca6b9%40googlegroups.com.
Found local metadata for matplotlib-2.2.4.p0
Using cached file /usr/local/sage-8.9/upstream/matplotlib-2.2.4.tar.bz2
matplotlib-2.2.4.p0

Setting up build directory for matplotlib-2.2.4.p0
Finished extraction
Applying patches from ../patches...
Applying ../patches/install-jquery-ui.patch
patching file setupext.py
Applying ../patches/python38.patch
patching file setup.py
Applying ../patches/setup.py.patch
patching file setup.py
Hunk #1 succeeded at 67 (offset -18 lines).

Host system:
Linux algebra.math.yorku.ca 2.6.32-754.23.1.el6.centos.plus.x86_64 #1 SMP Thu 
Sep 26 11:58:20 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

C compiler: gcc
C compiler version:
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/sage-8.9/local/libexec/gcc/x86_64-pc-linux-gnu/7.4.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../src/configure --prefix=/usr/local/sage-8.9/local 
--with-local-prefix=/usr/local/sage-8.9/local 
--with-gmp=/usr/local/sage-8.9/local --with-mpfr=/usr/local/sage-8.9/local 
--with-mpc=/usr/local/sage-8.9/local --with-system-zlib --without-isl 
--disable-multilib --disable-nls --disable-libitm 
--enable-languages=c,c++,fortran  
Thread model: posix
gcc version 7.4.0 (GCC) 

Package 'matplotlib' is currently not installed
No legacy uninstaller found for 'matplotlib'; nothing to do
NOTE: Set SAGE_MATPLOTLIB_GUI to anything but 'no' to try to build the 
Matplotlib GUI.
Not building any matplotlib graphical backends.
Installing matplotlib-2.2.4.p0
Installing package matplotlib using pip2
Ignoring indexes: https://pypi.org/simple
Created temporary directory: /tmp/pip-ephem-wheel-cache-gAKo5J
Created temporary directory: /tmp/pip-req-tracker-VPLkhj
Created requirements tracker '/tmp/pip-req-tracker-VPLkhj'
Created temporary directory: /tmp/pip-install-zhwCLb
Processing /usr/local/sage-8.9/local/var/tmp/sage/build/matplotlib-2.2.4.p0/src
  Created temporary directory: /tmp/pip-req-build-vCShvr
  Added 
file:///usr/local/sage-8.9/local/var/tmp/sage/build/matplotlib-2.2.4.p0/src to 
build tracker '/tmp/pip-req-tracker-VPLkhj'
  Running setup.py (path:/tmp/pip-req-build-vCShvr/setup.py) egg_info for 
package from 
file:///usr/local/sage-8.9/local/var/tmp/sage/build/matplotlib-2.2.4.p0/src
Running command python setup.py egg_info

Edit setup.cfg to change the build options

BUILDING MATPLOTLIB
matplotlib: yes [2.2.4]
python: yes [2.7.15 (default, Nov 12 2019, 03:11:15)  [GCC
7.4.0]]
  platform: yes [linux2]

REQUIRED DEPENDENCIES AND EXTENSIONS
 numpy: yes [version 1.16.1]
  install_requires: yes [handled by setuptools]
libagg: yes [pkg-config information for 'libagg' could not
be found. Using local copy.]
  freetype: no  [The C/C++ header for freetype2 (ft2build.h)
could not be found.  You may need to install the
development package.]
   png: yes [version 1.2.49]
 qhull: yes [pkg-config information for 'libqhull' could not
be found. Using local copy.]

OPTIONAL SUBPACKAGES
   sample_data: yes [installing]
  toolkits: yes [installing]

OPTIONAL BACKEND EXTENSIONS
macosx: no  [skipping due to configuration]
qt5agg: no  [PySide2 not found; PyQt5 not found]
qt4agg: no  [PySide not found; PyQt4 not found]
   gtk3agg: no  [Requires pygobject to be 

[sage-combinat-devel] Re: Categories, Parents, Elements

2018-05-20 Thread Mike Zabrocki
Hi Bruce,

The research on these objects is still a bit ongoing so the conventions 
have not yet settled down which is why I hesitate to submit it to Sage 
until there is clean expository material to refer to.  They will go into 
Sage eventually, but I think that they are closely related to plethysm, 
Kronecker and the restriction problem from Gl_n to S_n, so I think it is a 
very good idea to be careful about choosing the right notation and 
conventions. 

Let me try to give you some references.

For instance Halverson, Benkart and Harman wrote:
https://arxiv.org/abs/1605.06543
see section 5.  Do you see set valued tableaux?  No, what you see is 
expressions involving set partitions and column strict tableaux (same 
difference if you know what you are looking at).  You also have to know 
that the dimensions of these modules are the number of vascillating 
tableaux.

However a year later Halverson and Benkart wrote some follow up expository 
work, they made the connection more explicit:
https://arxiv.org/pdf/1709.07751.pdf
And here they have the bijection between the vascillating tableaux and the 
set valued tableaux in Section 3.2.

and the reason I am familiar with these connections is because Rosa 
Orellana and I wrote this paper:
https://arxiv.org/abs/1605.06672
Section 6 gives the relationship between the partition algebra character 
values and the coefficients of the character basis in the power sum.  The 
dimension (the number of vascillating tableaux of shape 
(n-|\lambda|,\lambda)) will be the coefficient of {\tilde s}_\lambda in 
p_{1^k} (and this is in Sage).

For instance the example that I gave with the vascillating tableaux of size 
2 (and n>4) are encoded in the coefficients of p_{11}:
sage: SymmetricFunctions(QQ).inject_shorthands('all', verbose=False)
sage: st(p[1,1])

2*st[] + 3*st[1] + st[1, 1] + st[2]
sage: s(p[1,1]).character_to_frobenius_image(5)
s[3, 1, 1] + s[3, 2] + 3*s[4, 1] + 2*s[5]

-Mike

On Sunday, 20 May 2018 09:47:39 UTC-4, Bruce wrote:
>
> This is intriguing but I need some help as I am not familiar with these.
> Can you give me some references on the background?
>
> In my setup, a "tableau" is a sequence of "partitions" with constraints
> on neighbouring partitions. Do set valued tableaux, or multiset valued 
> tableaux,
> fit this framework?
>
> P.S. Are you planning on submitting this code to sage? It seems that you
> should, particularly as it is now in the public domain.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] Re: Categories, Parents, Elements

2018-05-20 Thread Mike Zabrocki
Hi Bruce,
 

> Just to clarify; I refer to tableaux because I am taking constructions 
> that are well know for tableaux
> and generalising. One example is oscillating tableaux; these are sequences 
> of partitions where you
> add or remove a single box at each step. One example I want to experiment 
> with is vacillating tableaux.
> Then we have alternating tableaux, ribbon tableaux, ...
>

Just a comment about the object that you are proposing to work with.  
Vascillating tableaux are in bijection with set valued tableaux and that 
might be a simpler object to work with and manipulate in sage (because you 
could represent it as a pair of a standard tableau and a list of sets).

For example the vascillating tableaux of semi-length 2 and size 5 are:
((5), (4), (5), (4), (5))
((5), (4), (4,1), (4), (5))
((5), (4), (5), (4), (4,1)) 
((5), (4), (4,1), (4), (4,1)) 
((5), (4), (4,1), (3,1), (4,1)) 
((5), (4), (4,1), (3,1), (3,2)) 
((5), (4), (4,1), (3,1), (3,1,1)) 

[[.,.,.,.,12]]
[[.,.,.,1,2]]
[[.,.,.,1],[2]]
[[.,.,.,2],[1]]
[[.,.,.,.],[12]]
[[.,.,.],[1,2]]
[[.,.,.],[1],[2]]

The reason I mention this is because I have written code to work with set 
valued tableaux.  It isn't super robust because I kept changing 
conventions, but if you want to try it out, copy or modify it, I put it on 
a web page.  This way you can load it by executing the commands (or just 
view the code by following the links):
load("http://garsia.math.yorku.ca/~zabrocki/multisetpartition.py;)
load("http://garsia.math.yorku.ca/~zabrocki/multisettableau.py;)

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] Re: Multivariate Laurent polynomial ring with noncommutative relation y1*y2 = -y2*y1 ....and commutative relations x1*x2= x2*x1

2017-02-11 Thread Mike Zabrocki
Is what you want something like this?:

sage: P = FreeAlgebra(QQ,7,'x1,x2,x3,x4,y1,y2,y3')

sage: (x1, x2, x3, x4, y1, y2, y3) = P.gens()

sage: I = 
P.ideal([y1*y2+y2*y1,y2*y3+y3*y2,y1*y3+y3*y1,x1*x2-x2*x1,x1*x3-x3*x1,x1*x4-x4*x1,x2*x3-x3*x2,x2*x4-x4*x2,x3*x4-x4*x3])

sage: P.quotient_ring(I)

Quotient of Free Algebra on 7 generators (x1, x2, x3, x4, y1, y2, y3) over 
Rational Field by the ideal (y1*y2 + y2*y1, y2*y3 + y3*y2, y1*y3 + y3*y1, 
x1*x2 - x2*x1, x1*x3 - x3*x1, x1*x4 - x4*x1, x2*x3 - x3*x2, x2*x4 - x4*x2, 
x3*x4 - x4*x3)

sage: Q = P.quotient_ring(I)

sage: Q.gens()

(x1bar, x2bar, x3bar, x4bar, y1bar, y2bar, y3bar)

I think that the problem is that no non-commutative Grobner bases or 
'normal form' are implemented here:

sage: (x1bar, x2bar, x3bar, x4bar, y1bar, y2bar, y3bar) = Q.gens()

sage: y2bar*y1bar+y1bar*y2bar # should be 0

y1bar*y2bar + y2bar*y1bar

On Friday, 10 February 2017 10:45:25 UTC-5, Biswajit Ransingh wrote:
>
> Dear friends,
>
>
> P. = LaurentPolynomialRing(QQ)
>
> Can we make rich algebraic structure using the above P?
>
> The variables *x0, x1, x2, x3, x4 are commutative *
> and *y1, y2,y3 are non commutative.*
>
> if we ask for relation y1*y2 = -y2*y1 it gives 
> SyntaxError: can't assign to operator.
>
> Can we get something like: sage: P multivariate Laurent polynomial Ring in 
> x0, x1, x2, x3, x4, y1, y2,y3 over Rational Field, nc→relations: {y1*y2: 
> -y2*y1,y2*y3:-y3*y2,y1*
> y3:-y3*y1,x1*x2:-x2*x1}
>
> For example: Can we extend the below code to above  information
>
> sage: A. = FreeAlgebra(QQ, 3)
> sage: P. = A.g_algebra(relations={y*x:-x*y}, order = 'lex') 
> sage: P Noncommutative Multivariate Polynomial Ring in x, y, z over 
> Rational Field, nc- ˓→relations: {y*x: -x*y}
>
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-combinat-devel] Re: strange convention for column words of (skew) tableaux

2016-11-29 Thread Mike Zabrocki
I agree that the two methods should not have the same name.
My suggestion: deprecate one and call it 'to_word_by_column_reverse' 
(although it seems weird to bother to include both).

Can SkewTableau inherit from Tableau and have 'to_word_by_column' there?
-Mike

On Monday, 28 November 2016 19:05:48 UTC-5, Andrew wrote:
>
> Yes they should definitely be consistent -- sorry, I misread your email 
> and thought that you wanted the method for skew tableau to be the reverse 
> of that for tableauxnot enough coffee (or maybe too much:).
>
> As it currently stands there are many independent tableaux classes. 
> Ideally, methods like this should live in a common base class so 
> consistency is enforced and we don't re-implement them in each class.
>
> Andrew
>
> On Tuesday, 29 November 2016 09:33:52 UTC+11, Anne Schilling wrote:
>>
>> Hi Andrew, 
>>
>> If someone had just copied the code from Tableaux to SkewTableaux, 
>> then at least it would be consistent. I think it is really bad, 
>> if a method changes convention with a parent, given that one 
>> could be a subclass of the other. 
>>
>> Best, 
>>
>> Anne 
>>
>> On 11/28/16 1:23 PM, Andrew wrote: 
>> > Hi Anne, 
>> > 
>> > One of the problems with tableaux is that almost every possible 
>> variation of any definition is used by some one. With this in mind we 
>> probably should implement variations whenever possible. I don't 
>> > know anything about the history of this particular method (git blame 
>> might help), but I suspect that some one just copied the code from tableaux 
>> to skew tableaux. I certainly have no objection either 
>> > way as I don't use this method. 
>> > 
>> > Andrew 
>> > 
>> > On Tuesday, 29 November 2016 05:41:52 UTC+11, Anne Schilling wrote: 
>> > 
>> > Hi Combinat developers, 
>> > 
>> > Who came up with these conventions: 
>> > 
>> > sage: s=Tableau([[4,5],[6,7],[7],[8]]) 
>> > sage: s.to_word_by_column() 
>> > word: 876475 
>> > sage: s=SkewTableau([[4,5],[6,7],[7],[8]]) 
>> > sage: s.to_word_by_column() 
>> > word: 574678 
>> > 
>> > The column word of a skew tableau is the reverse of that 
>> > of a regular tableau. I think we should make the convention 
>> > the same (using the tableau convention!!!). 
>> > 
>> > What do you think? 
>> > 
>> > Anne 
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] sage server and test_notebook

2016-08-14 Thread Mike Zabrocki
Hi,

I was trying to get a sage server running on a computer at work and I kept 
finding that it would not connect.  I then started debugging and ran into 
further issues.

When I execute the documentation
 
http://doc.sagemath.org/html/en/reference/notebook/sagenb/notebook/notebook_object.html
(bottom of the page)

sage: from sagenb.notebook.notebook_object import test_notebooksage: passwd = 
str(randint(1,1<<128))sage: nb = test_notebook(passwd, interface='localhost', 
port=8060)


I get the error
---
AttributeErrorTraceback (most recent call last) 
 in () 
> 1 nb = test_notebook(passwd, interface='localhost', port=Integer(8060
)) 
/Applications/sage/local/lib/python2.7/site-packages/sagenb/notebook/
notebook_object.pyc in test_notebook(admin_passwd, secure, directory, port, 
interface, verbose) 
282  
283 nb = _notebook.load_notebook(directory) 
--> 284 nb.set_accounts(True) 
285 nb.add_user('admin', admin_passwd, '') 
286 nb.set_accounts(False)

AttributeError: 'Notebook' object has no attribute 'set_accounts'


which makes me think that this whole function is out of date.  Are others 
using the notebook server and finding that it is still working?  My 
problems with the server are probably not related, but I can't seem to test 
it and this makes me think that maybe some of this code is not going 
through the usual testing.


Thanks,

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] Re: Defining basis keys for combinatorial free modules

2016-04-22 Thread Mike Zabrocki
Oh, so you are allowing repeated entries?

sage: Words([1,2])
Words over {1, 2}
sage: Words([1,2],length=2).list()
[word: 11, word: 12, word: 21, word: 22]



On Friday, 22 April 2016 07:30:05 UTC-4, Simon Wood wrote:
>
> Hi Mike and Travis,
>
> Thank you very much for your replies.
>
> Mike, your code snippet is unfortunately not what I am looking for. Sorry 
> for being unclear. I'd like to construct the set of tuples of all lengths, 
> not just tuples of length up to a certain bound.
>
> Travis, the FreeMonoid looks very promising. Word of arbitrary length in 
> the set S should work just as well as tuples. I'll experiment with that a 
> little and report back.
>
> Cheers,
> Simon
>
> On Friday, April 22, 2016 at 12:46:53 PM UTC+10, Travis Scrimshaw wrote:
>>
>> Hey Simon,
>>You might want to use FreeMonoid(index_set=S) as your basis indexing 
>> set. Although you will need 7.2.beta5 to do the iteration:
>>
>> sage: S = (1,2)
>> sage: F = FreeMonoid(index_set=S)
>> sage: it = iter(F)
>> sage: [next(it) for _ in range(10)]
>> [1, F[1], F[2], F[1]*F[2], F[2]^2, F[1]^2, F[2]*F[1], F[1]^2*F[2], F[2]^2
>> *F[1], F[1]^3]
>> sage: [next(it).to_word_list() for _ in range(10)]
>> [[], [1], [2], [1, 2], [2, 2], [1, 1], [2, 1], [1, 1, 2], [2, 2, 1], [1, 
>> 1, 1]]
>> sage: F([[1,4],[2,1],[1,1],[2,3]])
>> F[1]^4*F[2]*F[1]*F[2]^3
>>
>> This works for any set S, but the iterator will only work for finite sets 
>> S. However, perhaps there could be some additional functionality for 
>> IndexedFreeMonoid that could be added to make it work with your use case.
>>
>> Best,
>> Travis
>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] Re: Defining basis keys for combinatorial free modules

2016-04-21 Thread Mike Zabrocki
I'm not sure if I answer your question properly with this snippet of code, 
but it might help point you to the right structures:

sage: def f(n):

: for S in Subsets(range(1,n+1)):

: for pi in Permutations(list(S)):

: yield tuple(pi)
sage: list(f(2))

[(), (1,), (2,), (1, 2), (2, 1)]


It would not explain how you would iterate over an infinite set S.


On Thursday, 21 April 2016 03:29:00 UTC-4, Simon Wood wrote:
>
> Hi all,
>
> I am having a bit of a hard time wrapping my head around how I am supposed 
> to define the basis keys that are required for creating a combinatorial 
> free module.
>
> The kind of basis keys with which I would like to label the basis of my 
> free module is the set of "all tuples, of any length, of elements in some 
> set S".
> So for example, if the set is S = { 1, 2 }, then the set of tuples would 
> contain
> (), (1,), (2,), (1,2), (2,1), ... and so on.
>
> Is there an easy way to define such a set of tuples?
>
> The actual sets S that I would like to work with are a bit more 
> complicated than the one above, in particular they have an ordering and it 
> would be nice to be able to check if the sequence of elements in a tuple is 
> in order. Also the sets S need not be finite.
> Any help and pointers to helpful documentation would be greatly 
> appreciated.
>
> Best,
> Simon
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] failed install of pyopenssl

2016-04-08 Thread Mike Zabrocki
Thanks,

The file "ffi.h" was the problem after all.
I had to 
sudo yum install libffi-devel

just having libffi alone wasn't cutting it.  I couldn't track down the 
"ffi.h" file from Volker's command and so I went back to see what I was not 
reading correctly from the yum whatprovides command.

I've installed pyopenssl on this machine before so I am surprised that it 
was fighting me on this install.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] failed install of pyopenssl

2016-04-08 Thread Mike Zabrocki
Well that doesn't seem to be the problem:

libffi-devel-3.0.5-3.2.el6.i686 : Development files for libffi

Repo: base

Matched from:

Filename: /usr/lib/libffi-3.0.5/include/ffi.h


libffi-devel-3.0.5-3.2.el6.x86_64 : Development files for libffi

Repo: base

Matched from:

Filename: /usr/lib64/libffi-3.0.5/include/ffi.h




[zabrocki@algebra sage]$ sudo yum install libffi

...

Package libffi-3.0.5-3.2.el6.x86_64 already installed and latest version

Nothing to do




On Friday, 8 April 2016 07:59:32 UTC-4, Jori Mäntysalo wrote:
>
> On Fri, 8 Apr 2016, Mike Zabrocki wrote: 
>
> > I've tried installing pyopenssl to a linux server running CENTOS on Sage 
> 7.2.beta2 
> > 
> > Both are terminating because of a missing header file: ffi.h 
> > Is there something that I should have installed that is missing? 
>
> yum whatprovides '*/ffi.h' 
>
> will tell what you need to install. 
>
> -- 
> Jori Mäntysalo 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] failed install of pyopenssl

2016-04-08 Thread Mike Zabrocki
Well that doesn't seem to be the problem:

libffi-devel-3.0.5-3.2.el6.i686 : Development files for libffi

Repo: base

Matched from:

Filename: /usr/lib/libffi-3.0.5/include/ffi.h


libffi-devel-3.0.5-3.2.el6.x86_64 : Development files for libffi

Repo: base

Matched from:

Filename: /usr/lib64/libffi-3.0.5/include/ffi.h




[zabrocki@algebra sage]$ sudo yum install libffi

...

Package libffi-3.0.5-3.2.el6.x86_64 already installed and latest version

Nothing to do

On Fri, Apr 8, 2016 at 7:59 AM, Jori Mäntysalo <jori.mantys...@uta.fi>
wrote:

> On Fri, 8 Apr 2016, Mike Zabrocki wrote:
>
> I've tried installing pyopenssl to a linux server running CENTOS on Sage
>> 7.2.beta2
>>
>> Both are terminating because of a missing header file: ffi.h
>> Is there something that I should have installed that is missing?
>>
>
> yum whatprovides '*/ffi.h'
>
> will tell what you need to install.
>
> --
> Jori Mäntysalo
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] failed install of pyopenssl

2016-04-08 Thread Mike Zabrocki


I've tried installing pyopenssl to a linux server running CENTOS on Sage 
7.2.beta2 (and beta3).
I used one of two commands 
./sage -i pyopenssl
./sage -pip install pyopenssl

Both are terminating because of a missing header file: ffi.h
Is there something that I should have installed that is missing?

-Mike


[sageuser@algebra sage]$ ./sage -pip install pyopenssl

Collecting pyopenssl

  Using cached pyOpenSSL-16.0.0-py2.py3-none-any.whl

Collecting cryptography>=1.3 (from pyopenssl)

  Using cached cryptography-1.3.1.tar.gz

Requirement already satisfied (use --upgrade to upgrade): six>=1.5.2 in 
./local/lib/python2.7/site-packages/six-1.10.0-py2.7.egg (from pyopenssl)

Requirement already satisfied (use --upgrade to upgrade): idna>=2.0 in 
./local/lib/python2.7/site-packages (from cryptography>=1.3->pyopenssl)

Requirement already satisfied (use --upgrade to upgrade): pyasn1>=0.1.8 in 
./local/lib/python2.7/site-packages (from cryptography>=1.3->pyopenssl)

Requirement already satisfied (use --upgrade to upgrade): setuptools>=11.3 
in ./local/lib/python2.7/site-packages/setuptools-20.3.1-py2.7.egg (from 
cryptography>=1.3->pyopenssl)

Requirement already satisfied (use --upgrade to upgrade): enum34 in 
./local/lib/python2.7/site-packages (from cryptography>=1.3->pyopenssl)

Requirement already satisfied (use --upgrade to upgrade): ipaddress in 
./local/lib/python2.7/site-packages (from cryptography>=1.3->pyopenssl)

Collecting cffi>=1.4.1 (from cryptography>=1.3->pyopenssl)

  Using cached cffi-1.5.2.tar.gz

Requirement already satisfied (use --upgrade to upgrade): pycparser in 
./local/lib/python2.7/site-packages (from 
cffi>=1.4.1->cryptography>=1.3->pyopenssl)

Installing collected packages: cffi, cryptography, pyopenssl

  Running setup.py install for cffi ... error

Complete output from command /usr/local/sage-7.2.beta3/local/bin/python 
-u -c "import setuptools, 
tokenize;__file__='/tmp/pip-build-qYgPpy/cffi/setup.py';exec(compile(getattr(tokenize,
 
'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" 
install --record /tmp/pip-kgVvmG-record/install-record.txt 
--single-version-externally-managed --compile:

Package libffi was not found in the pkg-config search path.

Perhaps you should add the directory containing `libffi.pc'

to the PKG_CONFIG_PATH environment variable

No package 'libffi' found

Package libffi was not found in the pkg-config search path.

Perhaps you should add the directory containing `libffi.pc'

to the PKG_CONFIG_PATH environment variable

No package 'libffi' found

Package libffi was not found in the pkg-config search path.

Perhaps you should add the directory containing `libffi.pc'

to the PKG_CONFIG_PATH environment variable

No package 'libffi' found

Package libffi was not found in the pkg-config search path.

Perhaps you should add the directory containing `libffi.pc'

to the PKG_CONFIG_PATH environment variable

No package 'libffi' found

Package libffi was not found in the pkg-config search path.

Perhaps you should add the directory containing `libffi.pc'

to the PKG_CONFIG_PATH environment variable

No package 'libffi' found

running install

running build

running build_py

creating build

creating build/lib.linux-x86_64-2.7

creating build/lib.linux-x86_64-2.7/cffi

copying cffi/setuptools_ext.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/commontypes.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/cffi_opcode.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/__init__.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/lock.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/cparser.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/verifier.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/api.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/backend_ctypes.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/recompiler.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/ffiplatform.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/model.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/vengine_gen.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/gc_weakref.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/vengine_cpy.py -> build/lib.linux-x86_64-2.7/cffi

copying cffi/_cffi_include.h -> build/lib.linux-x86_64-2.7/cffi

copying cffi/parse_c_type.h -> build/lib.linux-x86_64-2.7/cffi

copying cffi/_embedding.h -> build/lib.linux-x86_64-2.7/cffi

running build_ext

building '_cffi_backend' extension

creating build/temp.linux-x86_64-2.7

creating build/temp.linux-x86_64-2.7/c

gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall 
-Wno-unused -fPIC -DUSE__THREAD -I/usr/include/ffi -I/usr/include/libffi 
-I/usr/local/sage-7.2.beta3/local/include/python2.7 -c c/_cffi_backend.c -o 

Re: [sage-devel] Sage in Mac OSX 11.11 (El Capitan)

2015-10-02 Thread Mike Zabrocki
Hi, Let me pile on and explain my experience and how you have already fixed 
my problem.

I upgraded to Mac OS 10.11 this afternoon.  I tried running sage -b and 
found the following error:

-bash:/Applications/sage/src/sage $ sage -b
python -u setup.py install
Traceback (most recent call last):
  File "setup.py", line 4, in 
import os, sys, time, errno, platform, subprocess, glob
  File "/Applications/sage/local/lib/python/subprocess.py", line 430, in 

import pickle
  File "/Applications/sage/local/lib/python/pickle.py", line 34, in 
import struct
  File "/Applications/sage/local/lib/python/struct.py", line 1, in 
from _struct import *
ImportError: 
dlopen(/Applications/sage/local/lib/python2.7/lib-dynload/_struct.so, 2): 
Symbol not found: _PyUnicodeUCS4_AsEncodedString
  Referenced from: 
/Applications/sage/local/lib/python2.7/lib-dynload/_struct.so
  Expected in: flat namespace
 in /Applications/sage/local/lib/python2.7/lib-dynload/_struct.so
make: *** [sage] Error 1

I followed the advice to reboot with command-R and ran the 'csrutil 
disable' command in the terminal window.  Next time I tried it worked.

Thanks!

On Friday, 2 October 2015 04:00:23 UTC-5, Fredrik Strömberg wrote:
>
> After upgrading to El Capitan yesterday my sage ( v6.8 compiled from 
> source) stopped working and I figured out that  DYLD_LIBRARY_PATH and 
> LD_LIBRARY_PATH are no longer supported by default due to SIP (system 
> integrity protection) and rootless which are no turned on by default.
> After disabling rootless (boot into recovery mode with CMD+R and run 'csrutil 
> disable' from command line) everything works for me. 
> You can try and see if this also works for the downloaded binary 
> distributions.
> As a temporary measure this might be ok but in the long run something 
> probably have to change with the install process, e.g. rpaths as suggested 
> by others.
>
> Fredrik
>
> On Thursday, October 1, 2015 at 3:25:00 PM UTC+1, Thomas Kahle wrote:
>>
>> This is probably going to escalate with the public release of El Capitan. 
>> I upgraded, and I have no local sage anymore. What can we do?  I don't want 
>> to use sage math cloud, at least not always.
>>
>> On Friday, September 11, 2015 at 10:02:36 AM UTC+2, Volker Braun wrote:
>>>
>>> Looks like Apple kept the new behavior of DYLD_* environment variables 
>>> and they are not passed down to launched interpreters. Hence sooner or 
>>> later we crash with symbol not found as libraries can't be located. Really 
>>> we should have switched to rpaths years ago, this would have saved so much 
>>> pain. Also would explain why homebrew and friends didn't trip over that. 
>>> Don't know of any workaround on 10.11 besides sourcing sage-env whenever a 
>>> subshell is launched.
>>>
>>>
>>>
>>> On Friday, September 11, 2015 at 4:48:25 AM UTC+2, François wrote:

 Hum, that symbol is in libpython2.7.dylib, operator.so is not linked to 
 that library. 
 I am guessing it is supposed to be dlopen-ed from python which would 
 supply 
 the symbol. I suspect python will need patching. 
 Can you start python from a sage shell? 

 François 

 > On 11/09/2015, at 14:40, Juan Luis Varona  
 wrote: 
 > 
 > 
 >> El 11 sept 2015, a las 4:24, kcrisman  escribió: 
 >> 
 >> But, usually, new versions of osx can execute already compiled 
 versions of sage, and this does not happen this time. (I like to have 
 always the last version of osx in one of my computers, and I do not 
 remember this problem in the past.) 
 >> 
 >> 
 >> Yes, good point.  Can you give us exactly what kind of problems you 
 encounter with the 10.10 version on 10.11?  (If there are any message at 
 all.) 
 >> 
 > 
 > This is what appears in the Terminal using Sage-6.8.app (compiled for 
 osx 10.10) under osx 10.11: 
 > 
 > - 
 > 
 > Last login: Thu Sep 10 18:37:14 on ttys000 
 > AirTeXano:~ jvarona$ 
 '/Applications/Sage-6.8.app/Contents/Resources/sage'/sage --notebook 
 > Traceback (most recent call last): 
 >  File 
 "/Applications/Sage-6.8.app/Contents/Resources/sage/src/bin/sage-notebook",
  
 line 7, in  
 >import argparse 
 >  File 
 "/Applications/Sage-6.8.app/Contents/Resources/sage/local/lib/python/argparse.py",
  
 line 85, in  
 >import collections as _collections 
 >  File 
 "/Applications/Sage-6.8.app/Contents/Resources/sage/local/lib/python/collections.py",
  
 line 9, in  
 >from operator import itemgetter as _itemgetter, eq as _eq 
 > ImportError: 
 dlopen(/Applications/Sage-6.8.app/Contents/Resources/sage/local/lib/python2.7/lib-dynload/operator.so,
  
 2): Symbol not found: __PyUnicodeUCS4_AsDefaultEncodedString 
 >  Referenced from: 
 

[sage-combinat-devel] Topological conditions on Hopf algebras

2015-09-22 Thread Mike Zabrocki
Hi,

This question is kind of directed at Nicolas, but I'll accept the answer 
from anyone who knows the answer.

On ticket #18675 there was a discussion about the definition of 
GradedHopfAlgebra.  It turns out that topologists use a Koszul sign 
convention in one of the bi-algebra axioms.

$$(\mu \otimes \mu) \circ (id \otimes \tau \otimes id) \circ (\Delta 
\otimes \Delta) = \Delta \circ \mu$$

In combinatorics the twist map is $\tau(x \otimes y) = y \otimes x$

For a topologist a "graded Hopf algebra" implies that the twist map should 
satisfy $\tau(x \otimes y) = (-1)^{deg(x)deg(y)} y \otimes x$

I imagine that a Hopf algebra satisfying the first twist satisfies the 
tests imposed in the category of GradedHopfAlgebra.  Does the second?
If the second does not satisfy the conditions of being a GradedHopfAlgebra, 
where is the code in Sage that would cause that Hopf algebra to fail tests?

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-combinat-devel] Topological conditions on Hopf algebras

2015-09-22 Thread Mike Zabrocki
For the record, we had proposed in #18675 to refer to the "graded Hopf 
algebra" that the topologists use as GradedTopologicalHopfAlgebras and to 
refer to "Hopf algebras with a grading" that combinatorialists use as 
GradedCombinatorialHopfAlgebras.  It comes up in a name choice in an 
example in that ticket.

I mainly wanted to know if the current GradedHopfAlgebra structure could 
handle the two types.

If it were just a matter of tests, then *I think* the answer is yes, 
however then Jean-Baptiste pointed out to me the following example:

sage: R = NonCommutativeSymmetricFunctions(QQ).R()

sage: (tensor([R[1],R[[]]])+tensor([R[[]],R[1]]))^2

R[] # R[1, 1] + R[] # R[2] + 2*R[1] # R[1] + R[1, 1] # R[] + R[2] # R[]
This product is built into the tensor code.  It implies that 
(A # B) * (C # D) = (\mu \otimes \mu) \circ (id \otimes \tau \otimes \tau) 
(A # B # C # D)
where \tau( B # C ) = C # B.  I think this is not what we expect for a 
GradedTopologicalHopfAlgebras, but I guess that the product on the tensor 
space could be overwritten for those examples.

-Mike





-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] access denied on git

2015-09-21 Thread Mike Zabrocki
I mistakenly installed XCode 7 and so to save myself I started working on a 
fresh copy of sage where I don't do too much compiling.

In doing so I seem to have messed up my permissions to access git (or 
something).  I can checkout any branch I like, but I can't seem to push.

$ git push

fatal: remote error: access denied or repository not exported: /sage.git

I thought it might be my ssh key, but I can authenticate:

$ ssh g...@trac.sagemath.org info

hello zabrocki, this is git@trac running gitolite3 (unknown) on git 1.7.9.5


 R W sage

Does anyone have an idea about what I am doing wrong?

Thanks.
-Mike

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: access denied on git

2015-09-21 Thread Mike Zabrocki
You are right that running Xcode did install the command line tools, but 
that did not seem to fix the problem.
I continue to get the "fatal: remote error: access denied or repository not 
exported: /sage.git" message.
-Mike

On Monday, 21 September 2015 21:21:45 UTC-4, John H Palmieri wrote:
>
>
>
> On Monday, September 21, 2015 at 5:54:05 PM UTC-7, Mike Zabrocki wrote:
>>
>> I mistakenly installed XCode 7 and so to save myself I started working on 
>> a fresh copy of sage where I don't do too much compiling.
>>
>
> Have you tried running Xcode once? It will install some command-line 
> tools, and that may be what is necessary.
>
>   John
>
>
>  
>
>>
>> In doing so I seem to have messed up my permissions to access git (or 
>> something).  I can checkout any branch I like, but I can't seem to push.
>>
>> $ git push
>>
>> fatal: remote error: access denied or repository not exported: /sage.git
>>
>> I thought it might be my ssh key, but I can authenticate:
>>
>> $ ssh g...@trac.sagemath.org info
>>
>> hello zabrocki, this is git@trac running gitolite3 (unknown) on git 
>> 1.7.9.5
>>
>>
>>  R W sage
>>
>> Does anyone have an idea about what I am doing wrong?
>>
>> Thanks.
>> -Mike
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] access denied on git

2015-09-21 Thread Mike Zabrocki
Does it help to see my .gitconfig file?  This hasn't changed though.

[core]

editor = vi

[user]

name = zabrocki

email = zabro...@mathstat.yorku.ca

[alias]

wdiff = diff --color-words

lg = log --graph --pretty=format:'%Cred%h%Creset 
-%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)[%an]%Creset' 
--abbrev-commit --date=relative

rls = ls-remote origin

lscombinat = ls-remote origin '*combinat*'

[push]

default = upstream

[merge]

log = true


On Monday, 21 September 2015 21:10:43 UTC-4, Mike Zabrocki wrote:
>
> $ git remote -v 
>
> origin git://trac.sagemath.org/sage.git (fetch)
>
> origin git://trac.sagemath.org/sage.git (push)
>
>
>
> On Monday, 21 September 2015 21:02:16 UTC-4, vdelecroix wrote:
>>
>> How did you configure git? What gives 
>>
>>$ git remote -v 
>>
>> Vincent 
>>
>> On 21/09/15 21:54, Mike Zabrocki wrote: 
>> > I mistakenly installed XCode 7 and so to save myself I started working 
>> on a 
>> > fresh copy of sage where I don't do too much compiling. 
>> > 
>> > In doing so I seem to have messed up my permissions to access git (or 
>> > something).  I can checkout any branch I like, but I can't seem to 
>> push. 
>> > 
>> > $ git push 
>> > 
>> > fatal: remote error: access denied or repository not exported: 
>> /sage.git 
>> > 
>> > I thought it might be my ssh key, but I can authenticate: 
>> > 
>> > $ ssh g...@trac.sagemath.org info 
>> > 
>> > hello zabrocki, this is git@trac running gitolite3 (unknown) on git 
>> 1.7.9.5 
>> > 
>> > 
>> >   R W sage 
>> > 
>> > Does anyone have an idea about what I am doing wrong? 
>> > 
>> > Thanks. 
>> > -Mike 
>> > 
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: access denied on git

2015-09-21 Thread Mike Zabrocki
With some further experimenting I find that I can push from my old copy of 
sage (but I can't compile there).

I can edit and compile on one copy of sage and push with another.  This is 
an awkward setup, but at least I can some edits to a ticket done.
-Mike

On Monday, 21 September 2015 21:57:10 UTC-4, Mike Zabrocki wrote:
>
> You are right that running Xcode did install the command line tools, but 
> that did not seem to fix the problem.
> I continue to get the "fatal: remote error: access denied or repository 
> not exported: /sage.git" message.
> -Mike
>
> On Monday, 21 September 2015 21:21:45 UTC-4, John H Palmieri wrote:
>>
>>
>>
>> On Monday, September 21, 2015 at 5:54:05 PM UTC-7, Mike Zabrocki wrote:
>>>
>>> I mistakenly installed XCode 7 and so to save myself I started working 
>>> on a fresh copy of sage where I don't do too much compiling.
>>>
>>
>> Have you tried running Xcode once? It will install some command-line 
>> tools, and that may be what is necessary.
>>
>>   John
>>
>>
>>  
>>
>>>
>>> In doing so I seem to have messed up my permissions to access git (or 
>>> something).  I can checkout any branch I like, but I can't seem to push.
>>>
>>> $ git push
>>>
>>> fatal: remote error: access denied or repository not exported: /sage.git
>>>
>>> I thought it might be my ssh key, but I can authenticate:
>>>
>>> $ ssh g...@trac.sagemath.org info
>>>
>>> hello zabrocki, this is git@trac running gitolite3 (unknown) on git 
>>> 1.7.9.5
>>>
>>>
>>>  R W sage
>>>
>>> Does anyone have an idea about what I am doing wrong?
>>>
>>> Thanks.
>>> -Mike
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] access denied on git

2015-09-21 Thread Mike Zabrocki


$ git remote -v 

origin git://trac.sagemath.org/sage.git (fetch)

origin git://trac.sagemath.org/sage.git (push)



On Monday, 21 September 2015 21:02:16 UTC-4, vdelecroix wrote:
>
> How did you configure git? What gives 
>
>$ git remote -v 
>
> Vincent 
>
> On 21/09/15 21:54, Mike Zabrocki wrote: 
> > I mistakenly installed XCode 7 and so to save myself I started working 
> on a 
> > fresh copy of sage where I don't do too much compiling. 
> > 
> > In doing so I seem to have messed up my permissions to access git (or 
> > something).  I can checkout any branch I like, but I can't seem to push. 
> > 
> > $ git push 
> > 
> > fatal: remote error: access denied or repository not exported: /sage.git 
> > 
> > I thought it might be my ssh key, but I can authenticate: 
> > 
> > $ ssh g...@trac.sagemath.org  info 
> > 
> > hello zabrocki, this is git@trac running gitolite3 (unknown) on git 
> 1.7.9.5 
> > 
> > 
> >   R W sage 
> > 
> > Does anyone have an idea about what I am doing wrong? 
> > 
> > Thanks. 
> > -Mike 
> > 
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-combinat-devel] Sage Days 65 mini report

2015-06-12 Thread Mike Zabrocki


 If you are asking for ideas, I'm wondering: how hard would it be to 
 give the user better information and better options in the case when a 
 Sage install fails due to a package? 

I'll add a +1 for this idea.
I helped Stephen Doty install the development version of Sage on his 
machine while we were there and the process involved asking for help at 
sage-devel.
https://groups.google.com/forum/?fromgroups#!topic/sage-devel/_jY4yj9NcZc
There was a simple fix and a quick response, but I had to know who and 
where to ask.

-Mike 

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-combinat-devel] Sage Days 65 mini report

2015-06-12 Thread Mike Zabrocki


 If you are asking for ideas, I'm wondering: how hard would it be to 
 give the user better information and better options in the case when a 
 Sage install fails due to a package? 

I'll add a +1 for this idea.
I helped Stephen Doty install the development version of Sage on his 
machine while we were there and the process involved asking for help at 
sage-devel.
https://groups.google.com/forum/?fromgroups#!topic/sage-devel/_jY4yj9NcZc
There was a simple fix and a quick response, but I had to know who and 
where to ask.

-Mike 

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] trouble compiling 6.7 because of libgd

2015-06-10 Thread Mike Zabrocki
We are at Sage Days 65 and we are having trouble compiling Sage 6.7 on a 
Mac with OSX 10.10 and a very recently updated xcode and command line tools.

The message is that The following packages(s) may have failed to build: 
libgd-2.1.1.p0

We looked and there were tickets #18293 and #18364 that were merged in 6.7. 
 Does anyone have advice about how to get around this?

Thanks.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] Re: map_coefficients factor

2015-04-18 Thread Mike Zabrocki
I'm not looking for a workaround.  I know it happens.  I can watch out for 
it.

I am really hoping that there is an improvement to make Sage behave better. 
 Sage should be a good Computer Algebra System, but for examples like this 
it really pretty poor.  Moreover, I am sure that other users will run into 
this same example and perhaps not notice that the coefficients 1 are 
disappearing (because in the case I first ran into it, the output was pages 
long).

Let me give you another example of how I think Sage is not good at being a 
CAS:
sage: (q,t)=QQ['q','t'].fraction_field().gens()
sage: a = (-q^5)/(-t^3)
sage: expand(a)
(-q^5)/(-t^3)
sage: simplify(a)
(-q^5)/(-t^3)

How do I get Sage to realize the output is not right?  There is correct 
output and there is output which is helpful.  Sage does the former very 
well, I think that there should be some effort put in the latter.
-Mike

On Friday, 17 April 2015 17:36:23 UTC-4, Travis Scrimshaw wrote:

 Hey Mike,
At least as a workaround you could do something like this:

 sage: s=SymmetricFunctions(QQ).s()
 sage: x = s[2,1] + 2*s[3]
 sage: for i,c in x: print i, factor(c)
 [3] 2
 [2, 1] 1

 Best,
 Travis


 On Wednesday, April 15, 2015 at 5:00:18 PM UTC-4, Mike Zabrocki wrote:

 Hi all,
 There is very strange behavior if you want factored coefficients of a 
 free module.  Let me give an example in the ring of symmetric functions:

 sage: s=SymmetricFunctions(QQ).s()
 sage: (s[2,1] + 2*s[3]).map_coefficients(factor)
 2*s[3]

 What is happening here is that 'factor' returns a factorization object. 
  factor(1) is an empty list and hence is 'false'.  Now if you look at the 
 code for 's._from_dict' it removes objects which are empty.

 If you look at the documentation for 'map_coefficients' you can see that 
 this is not technically a bug because map_coefficients needs to be an 
 endofunction on the coefficient ring.  In this case, factor is mapping from 
 QQ to factor objects and so I wouldn't want to play with the result of that 
 command.  On the other hand, in symmetric functions (especially with 
 multiple parameters like Macdonald or Hall-Littlewood) one would frequently 
 like to factor coefficients to know that the coefficients have a nice form.

 Does anyone have any suggestions about what should happen with this case?
 I was discussing it with a few people, but we ruled out changing 
 factor, map_coefficients or _from_dict.

 I find that to work with coefficients in a polynomial ring, the functions 
 factor, simplify, expand are unsatisfactory because the output is rarely in 
 a form that shows me what I want to see (Maple and Mathematica seem better 
 at this).  Perhaps what I would like to have is a function 'niceify' that 
 displays a coefficient in a pretty form.



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] Re: map_coefficients factor

2015-04-18 Thread Mike Zabrocki
.map_coefficients doesn't produce an element of the same parent in this 
case (here it is returning a malformed Sage object).  In this example it is 
sending a symmetric function with coefficients in the ring QQ to a 
symmetric function with coefficients that are factor objects.  It however 
is not aware that the object that it is producing is not valid.  What is 
going wrong is that it is throwing away empty factors (or in this case 
factor(1) or even factor(-1)).  Technically this is also not wrong either 
because you want empty factors to be 'False' for other applications.
-Mike

On Saturday, 18 April 2015 14:33:08 UTC-4, Martin R wrote:

 I'm surprised that map_coefficients insists on producing an element of the 
 same parent.  Why is this reasonable?

 Martin


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-combinat-devel] Re: Order of Partitions()

2015-03-18 Thread Mike Zabrocki
That would make sense.  My preference is that (at least for values less 
than 15) the default is that the output is sorted and this can be 
controlled by the optional parameter.

I think about how many times that I test symmetric function identities on 
partitions and realize that patterns that indicate a relation to dominance 
order will be a lot less clear if the order is not something natural.  I 
wouldn't want the interface to be too complicated, but the more I think 
about it the more I realize that my personal use of partitions is very 
dependent on this order.

On Wednesday, 18 March 2015 04:20:15 UTC-4, Samuel Lelievre wrote:

 Nathann Cohen wrote:

 Hello, 

  I think that Partitions should be output in either lex (or possibly 
 reverse 
  lex) since this order is compatible with dominance order. 

 I only want to bring to your attention that deciding in which order 
 the partitions should be returned is not free in terms of 
 computational time. 

 The current implementation returns them in lex order, but returns 
 *many* wrong answers too (see #17548). 

 In order to fix that, Jeroen is re-implementing this feature through a 
 routine that enumerates the integer points of a polytope (see #17920), 
 probably without any control over the order in which they are 
 returned. 

 Thus, in order for Partition/Composition to return them in a specific 
 order we must list them *all* before returning the first of them. This 
 can really mean hours (or no results at all) instead of seconds on big 
 instances.


 So would it make sense to have an optional parameter sorted=None,
 which one could set to 'lex' or 'revlex' to get them in a desired order.
 The documentation could warn about the issues you just raised.


-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-combinat-devel] Re: Order of Partitions()

2015-03-18 Thread Mike Zabrocki
That would make sense.  My preference is that (at least for values less 
than 15) the default is that the output is sorted and this can be 
controlled by the optional parameter.

I think about how many times that I test symmetric function identities on 
partitions and realize that patterns that indicate a relation to dominance 
order will be a lot less clear if the order is not something natural.  I 
wouldn't want the interface to be too complicated, but the more I think 
about it the more I realize that my personal use of partitions is very 
dependent on this order.

On Wednesday, 18 March 2015 04:20:15 UTC-4, Samuel Lelievre wrote:

 Nathann Cohen wrote:

 Hello, 

  I think that Partitions should be output in either lex (or possibly 
 reverse 
  lex) since this order is compatible with dominance order. 

 I only want to bring to your attention that deciding in which order 
 the partitions should be returned is not free in terms of 
 computational time. 

 The current implementation returns them in lex order, but returns 
 *many* wrong answers too (see #17548). 

 In order to fix that, Jeroen is re-implementing this feature through a 
 routine that enumerates the integer points of a polytope (see #17920), 
 probably without any control over the order in which they are 
 returned. 

 Thus, in order for Partition/Composition to return them in a specific 
 order we must list them *all* before returning the first of them. This 
 can really mean hours (or no results at all) instead of seconds on big 
 instances.


 So would it make sense to have an optional parameter sorted=None,
 which one could set to 'lex' or 'revlex' to get them in a desired order.
 The documentation could warn about the issues you just raised.


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-combinat-devel] Re: Order of Partitions()

2015-03-17 Thread Mike Zabrocki
I agree that this is a decision that would have to weigh between cost in 
speed and convenience.  For small values of n the speedup will be small but 
that is where order is more useful.  For large values of n the order is 
probably less important.  Correct results are clearly the most important 
consideration.

-Mike

On Tuesday, 17 March 2015 07:51:53 UTC-4, Nathann Cohen wrote:

 Hello, 

  I think that Partitions should be output in either lex (or possibly 
 reverse 
  lex) since this order is compatible with dominance order. 

 I only want to bring to your attention that deciding in which order 
 the partitions should be returned is not free in terms of 
 computational time. 

 The current implementation returns them in lex order, but returns 
 *many* wrong answers too (see #17548). 

 In order to fix that, Jeroen is re-implementing this feature through a 
 routine that enumerates the integer points of a polytope (see #17920), 
 probably without any control over the order in which they are 
 returned. 

 Thus, in order for Partition/Composition to return them in a specific 
 order we must list them *all* before returning the first of them. This 
 can really mean hours (or no results at all) instead of seconds on big 
 instances. 

 Nathann 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-combinat-devel] Re: Order of Partitions()

2015-03-17 Thread Mike Zabrocki
I agree that this is a decision that would have to weigh between cost in 
speed and convenience.  For small values of n the speedup will be small but 
that is where order is more useful.  For large values of n the order is 
probably less important.  Correct results are clearly the most important 
consideration.

-Mike

On Tuesday, 17 March 2015 07:51:53 UTC-4, Nathann Cohen wrote:

 Hello, 

  I think that Partitions should be output in either lex (or possibly 
 reverse 
  lex) since this order is compatible with dominance order. 

 I only want to bring to your attention that deciding in which order 
 the partitions should be returned is not free in terms of 
 computational time. 

 The current implementation returns them in lex order, but returns 
 *many* wrong answers too (see #17548). 

 In order to fix that, Jeroen is re-implementing this feature through a 
 routine that enumerates the integer points of a polytope (see #17920), 
 probably without any control over the order in which they are 
 returned. 

 Thus, in order for Partition/Composition to return them in a specific 
 order we must list them *all* before returning the first of them. This 
 can really mean hours (or no results at all) instead of seconds on big 
 instances. 

 Nathann 


-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-combinat-devel] Re: Order of Partitions()

2015-03-17 Thread Mike Zabrocki
I think that Partitions should be output in either lex (or possibly reverse 
lex) since this order is compatible with dominance order.

One example where this arises is the transition matrix between certain 
bases factors into an upper and lower triangular matrix when the basis 
elements are ordered with respect to dominance order (does this appear as a 
doc test in the sf code?).  It would be really helpful when programming 
examples like these if the order did not change from what was there before.

-Mike

On Sunday, 15 March 2015 10:10:51 UTC-4, Anne Schilling wrote:

 Dear Jeroen, 

 The order of strong order tableaux does not really matter. 

 One place where it might slightly matter might be in character 
 tables of the symmetric group. As far as I remember they are just 
 matrices where rows and columns are indexed by integers rather than 
 by partitions. In this case the meaning might change. 

 Anne 

 On 3/15/15 4:36 AM, Samuel Lelievre wrote: 
  cc: sage-combinat-devel 
  
  2015-03-15 11:27:33 UTC+1, Jeroen Demeyer: 
  
  Hello, 
  
  currently in Sage, Partitions() are returned in 
 reverse-lexicographic 
  order. But is this order (which is nowhere documented as far as I 
 can 
  tell) really important? I am trying to fix Partitions and other 
 related 
  functions in #17920. This works fine but the order of the output is 
  changed, leading to various doctest failures like 
  
  
 ** 
  File src/sage/combinat/k_tableau.py, line 4082, in 
  sage.combinat.k_tableau.StrongTableaux.__iter__ 
  Failed example: 
   StrongTableaux(3, [5,2,2], weight=[3,3,1]).list() 
  Expected: 
   [[[-1, -1, -1, -2, -2], [-2, 2], [2, -3]], [[-1, -1, -1, 2, 
 -2], 
  [-2, -2], [2, -3]], [[-1, -1, -1, -2, -3], [-2, -2], [2, 2]]] 
  Got: 
   [[[-1, -1, -1, -2, -2], [-2, 2], [2, -3]], 
[[-1, -1, -1, -2, -3], [-2, -2], [2, 2]], 
[[-1, -1, -1, 2, -2], [-2, -2], [2, -3]]] 
  
 ** 
  
  I think it's safe to just change the doctests. However, if you 
 disagree, 
  let me know! 
  
  Jeroen. 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: [sage-combinat-devel] Re: Order of Partitions()

2015-03-17 Thread Mike Zabrocki
I think that Partitions should be output in either lex (or possibly reverse 
lex) since this order is compatible with dominance order.

One example where this arises is the transition matrix between certain 
bases factors into an upper and lower triangular matrix when the basis 
elements are ordered with respect to dominance order (does this appear as a 
doc test in the sf code?).  It would be really helpful when programming 
examples like these if the order did not change from what was there before.

-Mike

On Sunday, 15 March 2015 10:10:51 UTC-4, Anne Schilling wrote:

 Dear Jeroen, 

 The order of strong order tableaux does not really matter. 

 One place where it might slightly matter might be in character 
 tables of the symmetric group. As far as I remember they are just 
 matrices where rows and columns are indexed by integers rather than 
 by partitions. In this case the meaning might change. 

 Anne 

 On 3/15/15 4:36 AM, Samuel Lelievre wrote: 
  cc: sage-combinat-devel 
  
  2015-03-15 11:27:33 UTC+1, Jeroen Demeyer: 
  
  Hello, 
  
  currently in Sage, Partitions() are returned in 
 reverse-lexicographic 
  order. But is this order (which is nowhere documented as far as I 
 can 
  tell) really important? I am trying to fix Partitions and other 
 related 
  functions in #17920. This works fine but the order of the output is 
  changed, leading to various doctest failures like 
  
  
 ** 
  File src/sage/combinat/k_tableau.py, line 4082, in 
  sage.combinat.k_tableau.StrongTableaux.__iter__ 
  Failed example: 
   StrongTableaux(3, [5,2,2], weight=[3,3,1]).list() 
  Expected: 
   [[[-1, -1, -1, -2, -2], [-2, 2], [2, -3]], [[-1, -1, -1, 2, 
 -2], 
  [-2, -2], [2, -3]], [[-1, -1, -1, -2, -3], [-2, -2], [2, 2]]] 
  Got: 
   [[[-1, -1, -1, -2, -2], [-2, 2], [2, -3]], 
[[-1, -1, -1, -2, -3], [-2, -2], [2, 2]], 
[[-1, -1, -1, 2, -2], [-2, -2], [2, -3]]] 
  
 ** 
  
  I think it's safe to just change the doctests. However, if you 
 disagree, 
  let me know! 
  
  Jeroen. 


-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Error: FLINT failed to pass on Opensuse 13.1

2015-03-08 Thread Mike Zabrocki
I also ran into this error and was about to post a question about how to 
resolve it and I saw this posting.  Thanks.

The patch + setting SAGE_CHECK to yes also seems to resolve the problem for 
me.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] necklaces

2014-12-02 Thread Mike Zabrocki
I was double checking a problem from my combinatorics class (we are doing 
Pólya enumeration) and I came across what I think is a bug in the 
necklaces.py code.

I'll open a ticket, but I want to double check in case someone knows more 
about this code than I do.

sage: Necklaces([0,2,1]).list()
[[1, 2, 2], [1, 2, 3], [1, 3, 2]]
sage: Necklaces([0,2,1]).cardinality()
1

I think that while the second answer is correct, the first one should 
return [[2, 3, 3]].

The only problem that I can see is that code seems to not be written to 
handle input vectors that have 0 entries.  The documentation needs to be 
modernized a bit.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-combinat-devel] Re: necklaces

2014-12-02 Thread Mike Zabrocki
That is really good to know.  It seems that the code isn't handling input 
vectors with leading 0's.
-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: VOTE: code of conduct - ends Monday at midnight, PST.

2014-11-24 Thread Mike Zabrocki
[X] Yes -- adopt the code of conduct stated below

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Code of Conduct

2014-11-20 Thread Mike Zabrocki


 Don't worry, native English speakers have no idea, either. I read the 
 sage-sexist remark as a joke, but after Mike's followup, maybe not. In my 
 experience, 95% of the 

I was somewhat serious. The irony was that I really thought it was a 
communication problem (either intentional or unintentional) until William 
cleared it up and I think it was better that he did.
 

 English-speakers address each other informally as guys, including 
 females addressing mixed groups. (I personally hate the term, but that's 
 beside the point.)

I'm with you on this one, and I try not to use it myself and this is 
probably why I misunderstood.
 


 About the larger question: suppose (as William points out) someone(s) 
 ignore(s) a request to move something(s) to sage-flame. An alternate 
 approach to banning might be a policy of, si salvi chi può: simply start 
 a new thread. In my limited experience, those engaged in verbal combat 
 stick it out in the particular thread where lies the matter they can't let 
 lie.

I think that this is a good technique that might work in cases when a 
conversation has over-heated to the point where requests for a move to 
sage-flame are in order.  I think this is where I think a code of conduct 
is in order because its hard for a conversation to rise to this temperature 
if posters follow a be respectful mantra.  If posters ignore the idea 
that they need to be polite or people don't speak up when the tone gets 
heated, there will be the occasional offended party who will probably be 
more reluctant to post the next time.

-Mike

 


-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Code of Conduct

2014-11-19 Thread Mike Zabrocki
A bunch of 10~20 guys who can talk together for days about having or 

 not a code of conduct, each expressing his own voice and mixing it 
 with the others'... really have no communication problem :-P 

 Am I misreading this or does this belong on sage-sexist-comments ?

-Mike 

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


Re: [sage-devel] Re: Code of Conduct

2014-11-19 Thread Mike Zabrocki

 with the others'... really have no communication problem :-P 
In that case, may I request a moment of silence to be held in honor of the 
irony of this comment?

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] Re: Code of Conduct

2014-11-14 Thread Mike Zabrocki
I am in the
[X ] Yes, this is a great idea.  About time!
camp...

Some people are more intimidated by non-polite postings than others.  I am 
aware of people who were quite turned off by aggressive language (and have 
been turned off of sage development because of it...think of Simon's 
example, and he is probably more thick skinned than most) and asking that 
everyone play nice is hardly a radical approach.

While I agree with the sentiment that the right approach is to not feed 
the troll, this works only in (say) 90% of the cases.  What do you do with 
the other 10%?  I hope that the community will speak up and say hey, play 
nice but often this doesn't happen when it should and even that might not 
be enough if the damage is already done.

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.


[sage-devel] directory dependent tests

2014-01-14 Thread Mike Zabrocki
Hi,

I am having a problem when I run the doc tests from certain directories.  

For example:

--- from in src/sage/tests
% sage -t --long cmdline.py
All tests passed!

--- from in src
% sage -t --long sage/tests/cmdline.py
All tests passed!

--- from in src/sage
% sage -t --long tests/cmdline.py
[209 tests, 11 failures, 35.20 s]

This is not the only file which fails.  In fact I have more
sage -t --long tests/cmdline.py  # 11 doctests failed
sage -t --long calculus/desolvers.py  # 8 doctests failed
sage -t --long misc/interpreter.py  # 1 doctest failed
sage -t --long /Applications/sage-git/src/doc/en/constructions/calculus.rst
 # 4 doctests failed
sage -t --long misc/trace.py  # 2 doctests failed
sage -t --long /Applications/sage-git/src/doc/en/prep/Quickstarts/
Differential-Equations.rst
 # 2 doctests failed
and interrupt.py, which *doesn't* interrupt by itself.

Is running tests from within certain directories a known issue?
I guess I won't run tests from within src/sage, but then I doubt
my test all commands if they are really testing everything properly.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-combinat-devel] Fast Implementation for Character Values of Symmetric Groups

2013-12-21 Thread Mike Zabrocki
Hi,
Ideally I would like to see the use of symmetrica deprecated over time 
since there are known bugs and it has been difficult to maintain.  Maybe we 
could implement this in C to see if we can improve on what is there.

Define
Y = symmetrica.charval
and you have a very fast implementation of the character table.

sage: timeit('[MNR(la,mu) for n in range(1,10) for la in Partitions(n) for 
mu in Partitions(n)]')

5 loops, best of 3: 4.67 s per loop

sage: Y = symmetrica.charvalue

sage: timeit('[Y(la,mu) for n in range(1,10) for la in Partitions(n) for mu 
in Partitions(n)]')

25 loops, best of 3: 28.7 ms per loop

-Mike

On Saturday, 21 December 2013 14:01:33 UTC-8, Andrew wrote:

 Amri, this is quiet an impressive speed difference! If it's not too 
 difficult I'd be interested in seeing the timings for computing the full 
 character tables using your implemenentation of Murnaghan-Nakayama, 
 symmetric functions and the in-built character_table() method for the 
 symmetric groups..

 Cheers,
 Andrew

  Saturday, 21 December 2013 18:29:47 UTC+1, Amri wrote:

 Just to convince (myself and) Nicolas, I have a quick and dirty 
 implementation of the recursive Murnaghan-Nakayama formula.
 https://www.dropbox.com/s/8xfz4jo8bzjf7kf/mnr.py
 There are two functions implemented here, both of which compute a 
 character value of the symmetric group.
 The first uses symmetric functions exactly as suggested by Darij and is 
 called X
 The second used the recursive Murnaghan-Nakayama formula and is called MNR

 A typical timeit for a partition of 40:

 sage: la = Partitions(40).random_element()
 sage: mu = Partitions(40).random_element()
 sage: timeit('X(la,mu)')
 5 loops, best of 3: 854 ms per loop
 sage: timeit('MNR(la,mu)')
 125 loops, best of 3: 2.62 ms per loop

 And most importantly:

 sage: X(la,mu)==MNR(la,mu)
 True

 So if you just need one character value of a large symmetric group, the 
 recursive formula of Murnaghan-Nakayama is 300 times faster.

 Another question: what is a good name for this function?

 best,
 Amri.

 On Saturday, December 21, 2013 5:14:56 PM UTC+5:30, darijgrinberg wrote:

 Hi Nicolas, 

 the question is, I think, the one of doing it for one partition vs. 
 doing it for all partitions of n. In the latter case, I think we 
 should do what we say (replace Symmetrica if we can do it better, or 
 leave it be if we can't), but Amri has been talking about the former 
 case and there is definitely room for improvement there when n is 
 large. And I think it conceptually fits into partition.py, although 
 most people like myself probably won't ever use n's greater than 20 or 
 so. 

   Best regards, 
   Darij 

 On Fri, Dec 20, 2013 at 3:11 PM, Nicolas M. Thiery 
 nicolas...@u-psud.fr wrote: 
  Hi! 
  
  On Fri, Dec 20, 2013 at 12:37:51PM +0100, Darij Grinberg wrote: 
 But you are right in saying that this is not an optimal solution, 
 and it 
 might be better to implement the Murnaghan-Nakayama rule directly 
 as a 
 hook-removal algorithm rather than by building the whole s and p 
 bases of 
 Sym. 
  
  Well, building the whole s and p bases of Sym is not a deal as big 
  as the formulation may suggest :-) On a fresh Sage session: 
  
  sage: %time SymmetricFunctions(QQ).s() 
  CPU times: user 0.19 s, sys: 0.03 s, total: 0.23 s 
  Wall time: 0.27 s 
  Symmetric Functions over Rational Field in the Schur basis 
  sage: %time SymmetricFunctions(QQ).p() 
  CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s 
  Wall time: 0.00 s 
  Symmetric Functions over Rational Field in the powersum basis 
  
  And from now on the overhead of going through Sym to compute 
  characters is essentially negligible. If really you want to save on 
  this minimal overhead, look at the symmetric functions code, and call 
  Symmetrica directly. 
  
  On the other hand, what would be costly would be to have to maintain 
  two implementations of the MN rules just because they are used in 
  different places. If someone has an alternative implementation of MN 
  that is more efficient than that of Symmetrica, then we should drop 
  that piece of Symmetrica, and have the symmetric function code use the 
  alternative implementation. 
  
  Cheers, 
  Nicolas 
  -- 
  Nicolas M. Thiéry Isil nth...@users.sf.net 
  http://Nicolas.Thiery.name/ 
  
  -- 
  You received this message because you are subscribed to the Google 
 Groups sage-combinat-devel group. 
  To unsubscribe from this group and stop receiving emails from it, send 
 an email to sage-combinat-devel+unsubscr...@googlegroups.com. 
  To post to this group, send email to sage-comb...@googlegroups.com. 
  Visit this group at http://groups.google.com/group/sage-combinat-devel. 

  For more options, visit https://groups.google.com/groups/opt_out. 



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this 

Re: [sage-combinat-devel] Fast Implementation for Character Values of Symmetric Groups

2013-12-21 Thread Mike Zabrocki
Also, to compare with the original test:

sage: la = Partitions(40).random_element()

sage: mu = Partitions(40).random_element()

sage: timeit('Y(la,mu)')

625 loops, best of 3: 7.39 µs per loop

sage: timeit('MNR(la,mu)')

125 loops, best of 3: 2.42 ms per loop

-Mike

On Saturday, 21 December 2013 19:15:31 UTC-8, Mike Zabrocki wrote:

 Hi,
 Ideally I would like to see the use of symmetrica deprecated over time 
 since there are known bugs and it has been difficult to maintain.  Maybe we 
 could implement this in C to see if we can improve on what is there.

 Define
 Y = symmetrica.charval
 and you have a very fast implementation of the character table.

 sage: timeit('[MNR(la,mu) for n in range(1,10) for la in Partitions(n) 
 for mu in Partitions(n)]')

 5 loops, best of 3: 4.67 s per loop

 sage: Y = symmetrica.charvalue

 sage: timeit('[Y(la,mu) for n in range(1,10) for la in Partitions(n) for 
 mu in Partitions(n)]')

 25 loops, best of 3: 28.7 ms per loop

 -Mike

 On Saturday, 21 December 2013 14:01:33 UTC-8, Andrew wrote:

 Amri, this is quiet an impressive speed difference! If it's not too 
 difficult I'd be interested in seeing the timings for computing the full 
 character tables using your implemenentation of Murnaghan-Nakayama, 
 symmetric functions and the in-built character_table() method for the 
 symmetric groups..

 Cheers,
 Andrew

  Saturday, 21 December 2013 18:29:47 UTC+1, Amri wrote:

 Just to convince (myself and) Nicolas, I have a quick and dirty 
 implementation of the recursive Murnaghan-Nakayama formula.
 https://www.dropbox.com/s/8xfz4jo8bzjf7kf/mnr.py
 There are two functions implemented here, both of which compute a 
 character value of the symmetric group.
 The first uses symmetric functions exactly as suggested by Darij and is 
 called X
 The second used the recursive Murnaghan-Nakayama formula and is called 
 MNR

 A typical timeit for a partition of 40:

 sage: la = Partitions(40).random_element()
 sage: mu = Partitions(40).random_element()
 sage: timeit('X(la,mu)')
 5 loops, best of 3: 854 ms per loop
 sage: timeit('MNR(la,mu)')
 125 loops, best of 3: 2.62 ms per loop

 And most importantly:

 sage: X(la,mu)==MNR(la,mu)
 True

 So if you just need one character value of a large symmetric group, the 
 recursive formula of Murnaghan-Nakayama is 300 times faster.

 Another question: what is a good name for this function?

 best,
 Amri.

 On Saturday, December 21, 2013 5:14:56 PM UTC+5:30, darijgrinberg wrote:

 Hi Nicolas, 

 the question is, I think, the one of doing it for one partition vs. 
 doing it for all partitions of n. In the latter case, I think we 
 should do what we say (replace Symmetrica if we can do it better, or 
 leave it be if we can't), but Amri has been talking about the former 
 case and there is definitely room for improvement there when n is 
 large. And I think it conceptually fits into partition.py, although 
 most people like myself probably won't ever use n's greater than 20 or 
 so. 

   Best regards, 
   Darij 

 On Fri, Dec 20, 2013 at 3:11 PM, Nicolas M. Thiery 
 nicolas...@u-psud.fr wrote: 
  Hi! 
  
  On Fri, Dec 20, 2013 at 12:37:51PM +0100, Darij Grinberg wrote: 
 But you are right in saying that this is not an optimal solution, 
 and it 
 might be better to implement the Murnaghan-Nakayama rule directly 
 as a 
 hook-removal algorithm rather than by building the whole s and p 
 bases of 
 Sym. 
  
  Well, building the whole s and p bases of Sym is not a deal as big 
  as the formulation may suggest :-) On a fresh Sage session: 
  
  sage: %time SymmetricFunctions(QQ).s() 
  CPU times: user 0.19 s, sys: 0.03 s, total: 0.23 s 
  Wall time: 0.27 s 
  Symmetric Functions over Rational Field in the Schur basis 
  sage: %time SymmetricFunctions(QQ).p() 
  CPU times: user 0.00 s, sys: 0.00 s, total: 0.00 s 
  Wall time: 0.00 s 
  Symmetric Functions over Rational Field in the powersum basis 
  
  And from now on the overhead of going through Sym to compute 
  characters is essentially negligible. If really you want to save on 
  this minimal overhead, look at the symmetric functions code, and call 
  Symmetrica directly. 
  
  On the other hand, what would be costly would be to have to maintain 
  two implementations of the MN rules just because they are used in 
  different places. If someone has an alternative implementation of MN 
  that is more efficient than that of Symmetrica, then we should drop 
  that piece of Symmetrica, and have the symmetric function code use 
 the 
  alternative implementation. 
  
  Cheers, 
  Nicolas 
  -- 
  Nicolas M. Thiéry Isil nth...@users.sf.net 
  http://Nicolas.Thiery.name/ 
  
  -- 
  You received this message because you are subscribed to the Google 
 Groups sage-combinat-devel group. 
  To unsubscribe from this group and stop receiving emails from it, 
 send an email to sage-combinat-devel+unsubscr

[sage-combinat-devel] Re: sage-combinat move to git

2013-11-09 Thread Mike Zabrocki
Hi,

Sorry I had to leave yesterday during the discussion
of the workflow/searching. It seems like you made a lot
more progress on the document.

I was reading the searching section and I still don't quite
see how to tell who wrote the code or who posted:

origin/public/combinat/sf/sp_orth

I even searched the logs and I didn't see the name of branch
but I did see:

-
commit 226c37a8561486888d0231095ac6df379aa46323
Author: Travis Scrimshaw tscrim at ucdavis.edu
Date: Fri Nov 8 18:59:36 2013 -0800

Initial version of symplectic and orthogonal basis for symmetric functions.

Currently this does not work correctly because the basis do not
give a Hopf structure by converting to the Schur basis and
it is only a filtered basis, not a graded basis.
-

So I in this case I could realize that this commit message
is probably related to this branch, but in general the commit 
messages are not so helpful:

more grammar fixed
typo fixed
more doc fixes

and I had to sift through those to find the one that I wanted. If it had
been committed 3 weeks ago I doubt that there would be any chance
that I would be able to figure out who is working on it to contact them
to let them know I was interested. I'm sure that there is a way to
resolve this issue.

Is there a command to look up the creator of a branch?

I found one way to (maybe) resolve this was to checkout the branch
and then execute the command:

$ git log HEAD ^master

but what didn't work was

$ git log --remotes='origin/public/combinat/sf/sp_orth' ^origin/master

Shouldn't this command show me the commits on that branch?

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Re: sage-combinat move to git

2013-11-09 Thread Mike Zabrocki
I guess that I should make it clearer that the first time I searched
the log with:
$ git log
to find the commit message by Travis by looking through all of
them to find the one relevant to the branch I was interested in.

It wasn't until later that I realized that could checkout the branch
first and then check the logs only relevant to that branch.

The command that I think should work to read the log of a branch
without checking it out doesn't seem to work for me.

-Mike

On Saturday, 9 November 2013 14:24:18 UTC-5, Mike Zabrocki wrote:

 Hi,

 Sorry I had to leave yesterday during the discussion
 of the workflow/searching. It seems like you made a lot
 more progress on the document.

 I was reading the searching section and I still don't quite
 see how to tell who wrote the code or who posted:

 origin/public/combinat/sf/sp_orth

 I even searched the logs and I didn't see the name of branch
 but I did see:

 -
 commit 226c37a8561486888d0231095ac6df379aa46323
 Author: Travis Scrimshaw tscrim at ucdavis.edu
 Date: Fri Nov 8 18:59:36 2013 -0800

 Initial version of symplectic and orthogonal basis for symmetric functions.

 Currently this does not work correctly because the basis do not
 give a Hopf structure by converting to the Schur basis and
 it is only a filtered basis, not a graded basis.
 -

 So I in this case I could realize that this commit message
 is probably related to this branch, but in general the commit 
 messages are not so helpful:

 more grammar fixed
 typo fixed
 more doc fixes

 and I had to sift through those to find the one that I wanted. If it had
 been committed 3 weeks ago I doubt that there would be any chance
 that I would be able to figure out who is working on it to contact them
 to let them know I was interested. I'm sure that there is a way to
 resolve this issue.

 Is there a command to look up the creator of a branch?

 I found one way to (maybe) resolve this was to checkout the branch
 and then execute the command:

 $ git log HEAD ^master

 but what didn't work was

 $ git log --remotes='origin/public/combinat/sf/sp_orth' ^origin/master

 Shouldn't this command show me the commits on that branch?

 -Mike


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-combinat-devel] Re: sage-combinat move to git

2013-11-09 Thread Mike Zabrocki
Thanks,
I thought the * was to complete the name if I didn't know the ending.
-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-devel] Re: OS X Mavericks

2013-11-04 Thread Mike Zabrocki
I had updated my Xcode and OS system to 10.9 Mavericks in late October.  I 
was having no problems building and working with patches for a long time 
until I touched some files that required certain certain libraries.  When I 
touched those files I was no longer able to complete 'sage -b'.  

When I tried downloading a copy from source and compiling I was getting 
only about 5-10 minutes into the compile before I was getting an error.  I 
was getting an error long before getting to the polybori stage.

It turns out I needed to download a new copy of the command line tools.  To 
do this I completed the following:
1. Open Xcode
2. from the Xcode menu - Open Developer Tool - More Developer Tools ...
3. I needed to log into the Apple Developer website
4. There was a command line tools for OSX Mavericks which I downloaded and 
installed
Note that there is also an update for OSX Mountain Lion so this should not 
only be the problem for 10.9

After I installed the new command line tools then I was able to build from 
source also for about 3 hours and then I encountered the same errors that 
others are seeing here.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Re: Some rebasing and the end of #10963?

2013-10-31 Thread Mike Zabrocki

I just did an experiment where I:
1) made a clean copy of sage
2) added patches #15094 and #11688
3) sage -b : everything works
4) qimported the first patch from #10963
5) sage -b : everything works
6) qpushed the patch
7) qpoped the patch
8) sage -b : ack! same error

*dreaded* patch!  I don't even have to compile it before it destroys my copy
of sage.  I need only qpush it.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Re: Some rebasing and the end of #10963?

2013-10-31 Thread Mike Zabrocki
Hi,

I figured out (as you probably would believe) that the problem has nothing
to do with #10963 other than it is causing sage -b to rebuild
certain files.  The problem is my compilers are out of whack.  It must have 
been the
recent version of xcode that I installed.

I touched a bunch of files that seemed to be causing the error
in sage/ext and sage/structure and did sage -b this was enough
to trigger the problem.

-Mike

On Thursday, 31 October 2013 13:03:41 UTC-4, Mike Zabrocki wrote:


 I just did an experiment where I:
 1) made a clean copy of sage
 2) added patches #15094 and #11688
 3) sage -b : everything works
 4) qimported the first patch from #10963
 5) sage -b : everything works
 6) qpushed the patch
 7) qpoped the patch
 8) sage -b : ack! same error

 *dreaded* patch!  I don't even have to compile it before it destroys my 
 copy
 of sage.  I need only qpush it.

 -Mike



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-combinat-devel] Re: Some rebasing and the end of #10963?

2013-10-31 Thread Mike Zabrocki
Does anyone have any advice about what might be wrong with the compilation 
or who to ask?  I doubt that I will be able to compile much of anything 
until I get this fixed:

The file 
/Applications/sage/local/bin/../lib/gcc/x86_64-apple-darwin12.4.0/4.7.3/include-fixed/limits.h:169:61

contains the lines at the end that are triggering the error fatal error: 
limits.h: No such file or directory:

#else /* not _GCC_LIMITS_H_ */

#ifdef _GCC_NEXT_LIMITS_H
#include_next limits.h /* recurse down to the real one */
#endif

#endif /* not _GCC_LIMITS_H_ */

-
If I remove the line  #include_next limits.h then it fixes the problem 
in that file but the same problem pops up in other files.  The problem must 
be that some path variables are not set correctly for my system.

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-combinat-devel] Re: Some rebasing and the end of #10963?

2013-10-31 Thread Mike Zabrocki
I've got the new Xcode and Mavericks.
I guess I shouldn't be surprised that I've got the same compiler problems.  
Thanks for pointing that out.

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-combinat-devel] Re: [sage-devel] SetPartitions output as sets?

2013-10-29 Thread Mike Zabrocki
It looks to me like ClonableArray stores its object as a list
(I looked at ClonableArray.__init__)
while CombinatorialClass can keep the object as a Set,
but I didn't trace down the code very far.

If you convert a SetPartition to a list first then you
can map to sage Set.

sage: A = SetPartition([[1,2],[3,4]])
sage: B = SetPartition([[1],[2],[3,4]])
sage: Set(list(A)).intersection(Set(list(B)))

{{3, 4}}

sage: set(A).intersection(set(B))

set([{3, 4}])

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Re: [sage-devel] SetPartitions output as sets?

2013-10-28 Thread Mike Zabrocki
I am not sure, but I believe that this was probably changed in #14140
when SetPartition was changed from a CombinatorialClass to a
ClonableArray.  It doesn't look like it changed in #15143 but additional
changes to the SetPartition class were made there.

It seems like the easiest fix would to write something like
a method `to_set_of_sets` or add directly the `intersection` method
in the element methods for SetPartition.  Both might be useful
for other users.

-Mike

On Monday, 28 October 2013 11:54:41 UTC-4, Vincent Delecroix wrote:

 I forwarded your e-mail to sage-combinat as it might be of interest there. 

 Isn't there a problem of Element (a set partition) which want at the 
 same time to be a Parent here (ie a set) ?I guess it would be 
 impossible to cleanly solve the issue in the actual state of the 
 Parent/Element implementation... 

 Vincent 

 2013/10/28, Rob Beezer goo...@beezer.cotse.net javascript:: 
  SetPartitions() used to create sets of sets (as of, say January 2013). 
  That seems to be broken as most common methods on sets will fail (but 
 not 
  all).  Any ideas on a simple fix or a good workaround (or an indication 
 of 
  what I am doing wrong)?  I can use the standard_form() method to get a 
 list 
  
  of lists, which I can convert back to sets of sets, but that is very 
  unnatural (and the reordering will mean lots of needless editing of a 
 very 
  long string of doctests). 
  
  Thanks in advance for any ideas.  I can make a trac ticket if that is 
  called for. 
  
  Rob 
  
  sage: S = SetPartitions([1,2,3,4], [2,2]).list() 
  sage: S 
  [{{1, 2}, {3, 4}}, {{1, 3}, {2, 4}}, {{1, 4}, {2, 3}}] 
  
  sage: S[0].cardinality() 
  2 
  
  sage: S[0].intersection(S[1]) 
  AttributeError: 'SetPartitions_setparts_with_category.element_class' 
 object 
  
  has no attribute 'intersection' 
  
  sage: Set(S[0]) 
  TypeError: Element has no defined underlying set 
  
  -- 
  You received this message because you are subscribed to the Google 
 Groups 
  sage-devel group. 
  To unsubscribe from this group and stop receiving emails from it, send 
 an 
  email to sage-devel+...@googlegroups.com javascript:. 
  To post to this group, send email to 
  sage-...@googlegroups.comjavascript:. 

  Visit this group at http://groups.google.com/group/sage-devel. 
  For more options, visit https://groups.google.com/groups/opt_out. 
  


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-devel] SetPartitions output as sets?

2013-10-28 Thread Mike Zabrocki
I am not sure, but I believe that this was probably changed in #14140
when SetPartition was changed from a CombinatorialClass to a
ClonableArray.  It doesn't look like it changed in #15143 but additional
changes to the SetPartition class were made there.

It seems like the easiest fix would to write something like
a method `to_set_of_sets` or add directly the `intersection` method
in the element methods for SetPartition.  Both might be useful
for other users.

-Mike

On Monday, 28 October 2013 11:54:41 UTC-4, Vincent Delecroix wrote:

 I forwarded your e-mail to sage-combinat as it might be of interest there. 

 Isn't there a problem of Element (a set partition) which want at the 
 same time to be a Parent here (ie a set) ?I guess it would be 
 impossible to cleanly solve the issue in the actual state of the 
 Parent/Element implementation... 

 Vincent 

 2013/10/28, Rob Beezer goo...@beezer.cotse.net javascript:: 
  SetPartitions() used to create sets of sets (as of, say January 2013). 
  That seems to be broken as most common methods on sets will fail (but 
 not 
  all).  Any ideas on a simple fix or a good workaround (or an indication 
 of 
  what I am doing wrong)?  I can use the standard_form() method to get a 
 list 
  
  of lists, which I can convert back to sets of sets, but that is very 
  unnatural (and the reordering will mean lots of needless editing of a 
 very 
  long string of doctests). 
  
  Thanks in advance for any ideas.  I can make a trac ticket if that is 
  called for. 
  
  Rob 
  
  sage: S = SetPartitions([1,2,3,4], [2,2]).list() 
  sage: S 
  [{{1, 2}, {3, 4}}, {{1, 3}, {2, 4}}, {{1, 4}, {2, 3}}] 
  
  sage: S[0].cardinality() 
  2 
  
  sage: S[0].intersection(S[1]) 
  AttributeError: 'SetPartitions_setparts_with_category.element_class' 
 object 
  
  has no attribute 'intersection' 
  
  sage: Set(S[0]) 
  TypeError: Element has no defined underlying set 
  
  -- 
  You received this message because you are subscribed to the Google 
 Groups 
  sage-devel group. 
  To unsubscribe from this group and stop receiving emails from it, send 
 an 
  email to sage-devel+...@googlegroups.com javascript:. 
  To post to this group, send email to 
  sage-...@googlegroups.comjavascript:. 

  Visit this group at http://groups.google.com/group/sage-devel. 
  For more options, visit https://groups.google.com/groups/opt_out. 
  


-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Symmetrica errors

2013-10-16 Thread Mike Zabrocki
Hi,

I am trying to identify a bug in the symmetric function package and I am 
stuck now that I think that it is in the spkg for symmetrica.

My tracking of the bug (over the course of the last 24 hours) is documented 
in ticket #13413.

I now believe that the error is in symmetrica but I can't seem to run 
symmetrica on its own (which is what I will need in order to get 
confirmation of this bug).

Can I get some advice from someone who might know what to do next?

I've unzipped the source for symmetrica but I can't get it to compile.

Maybe symmetrica isn't meant to be hand compiled but I also went to the 
source code page for the package and I have come to the same block.  Is the 
next step to contact the authors of the package?

-Mike

I try:

% cd symmetrica/symmetrica-2.0.p7/src
% make -f ../patches/makefile test
cc-c -o ff.o ff.c
ff.c:1295:25: warning: add explicit braces to avoid dangling else 
[-Wdangling-else]
if (S_O_K(c) != FF) FREESELF(c);
^
./macro.h:1344:5: note: expanded from macro 'FREESELF'
else if (S_O_K(a) == INTEGER) C_O_K(a,EMPTY);\
^
ff.c:3747:5: warning: control reaches end of non-void function 
[-Wreturn-type]
}
^
ff.c:3981:5: warning: implicit declaration of function 'UE_hoch' is invalid 
in C99 [-Wimplicit-function-declaration]
UE_hoch(  S_FF_IP(l) ,Charakteristik, 
S_FF_IP(l)  );
^
ff.c:3981:28: error: use of undeclared identifier 'Charakteristik'
UE_hoch(  S_FF_IP(l) ,Charakteristik, 
S_FF_IP(l)  );
   ^
3 warnings and 1 error generated.
make: *** [ff.o] Error 1


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Re: Symmetrica errors

2013-10-16 Thread Mike Zabrocki
Step 1:
use the make file in the src directory and not in the patches directory as 
I was.
That is:
% cd symmetrica/symmetrica-2.0.p7/src

Step 2:
There is a line in the makefile that uses cc for the compiler rather than 
gcc
I changed this line to gcc and it compiles a lot more of the files 
(touch *.c to make sure that it doesn't use the old .o files).

I still can't seem to make test.c run (or do anything obvious), but at 
least it compiles.

-Mike

On Wednesday, 16 October 2013 13:53:48 UTC-4, Mike Zabrocki wrote:

 Hi,

 I am trying to identify a bug in the symmetric function package and I am 
 stuck now that I think that it is in the spkg for symmetrica.

 My tracking of the bug (over the course of the last 24 hours) is 
 documented in ticket #13413.

 I now believe that the error is in symmetrica but I can't seem to run 
 symmetrica on its own (which is what I will need in order to get 
 confirmation of this bug).

 Can I get some advice from someone who might know what to do next?

 I've unzipped the source for symmetrica but I can't get it to compile.

 Maybe symmetrica isn't meant to be hand compiled but I also went to the 
 source code page for the package and I have come to the same block.  Is the 
 next step to contact the authors of the package?

 -Mike

 I try:

 % cd symmetrica/symmetrica-2.0.p7/src
 % make -f ../patches/makefile test
 cc-c -o ff.o ff.c
 ff.c:1295:25: warning: add explicit braces to avoid dangling else 
 [-Wdangling-else]
 if (S_O_K(c) != FF) FREESELF(c);
 ^
 ./macro.h:1344:5: note: expanded from macro 'FREESELF'
 else if (S_O_K(a) == INTEGER) C_O_K(a,EMPTY);\
 ^
 ff.c:3747:5: warning: control reaches end of non-void function 
 [-Wreturn-type]
 }
 ^
 ff.c:3981:5: warning: implicit declaration of function 'UE_hoch' is 
 invalid in C99 [-Wimplicit-function-declaration]
 UE_hoch(  S_FF_IP(l) ,Charakteristik, 
 S_FF_IP(l)  );
 ^
 ff.c:3981:28: error: use of undeclared identifier 'Charakteristik'
 UE_hoch(  S_FF_IP(l) ,Charakteristik, 
 S_FF_IP(l)  );
^
 3 warnings and 1 error generated.
 make: *** [ff.o] Error 1




-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Re: Symmetrica errors

2013-10-16 Thread Mike Zabrocki
There is more:

Step 3:

% make test

Step 4:
run the program but make sure it is in your path:

% ./test
SYMMETRICA VERSION 3.0 - STARTING
 Thu Feb 26 14:58:10 MET 1998 
integerobject 
5
120

SYMMETRICA VERSION 3.0 - ENDING
last changed:  Thu Feb 26 14:58:10 MET 1998 

Note that I entered 5 and it returned 120.
I don't know where it is getting SYMMETRICA VERSION 3.0 from.  Other 
indications is that this is v 2.0.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Help with documentation

2013-08-26 Thread Mike Zabrocki
Some of the documentation for Quasi-symmetric functions does not show up in 
the html file.

For example if you look at the method expand in
QuasiSymmetricFunctions.Bases.ElementMethods.expand
it doesn't seem to appear.

Is there some obvious reason why?  Is it too deep?  Is there something 
wrong with
the indentation?  Is there some flag that needs to be set for the 
documentation to
be part of the html docs?  Is there some typo in the file that is causing 
this to be
skipped over?

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


Re: [sage-combinat-devel] Help with documentation

2013-08-26 Thread Mike Zabrocki
Nicolas,
Thanks!  I won't lose any more sleep over this then.
I could not figure out what I was doing wrong.
-Mike

On Monday, 26 August 2013 17:02:33 UTC-4, Nicolas M. Thiery wrote:

 Hi Mike! 

 On Mon, Aug 26, 2013 at 06:56:40AM -0700, Mike Zabrocki wrote: 
 Some of the documentation for Quasi-symmetric functions does not show 
 up 
 in the html file. 
 For example if you look at the method expand in 
 QuasiSymmetricFunctions.Bases.ElementMethods.expand 
 it doesn't seem to appear. 
 Is there some obvious reason why?  Is it too deep?  Is there 
 something 
 wrong with 
 the indentation?  Is there some flag that needs to be set for the 
 documentation to 
 be part of the html docs?  Is there some typo in the file that is 
 causing 
 this to be 
 skipped over? 

 Nested classes of depth  2 were not supported by Sphinx, due to 
 Python not naming them properly. #9107, which is almost finished, 
 should fix this. 

 Cheers, 
 Nicolas 
 -- 
 Nicolas M. Thi�ry Isil nth...@users.sf.net javascript: 
 http://Nicolas.Thiery.name/ 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] Re: queue down

2013-08-25 Thread Mike Zabrocki
Actually its more likely caused by changes in #14819.

It seemed to be minor so I went ahead and 
rebased extended_affine_weyl_groups_sd40.patch

-Mike

On Sunday, 25 August 2013 07:23:05 UTC-4, Mike Zabrocki wrote:

 Hi Travis,

 I think that your work on #14901 caused a conflict
 with extended_affine_weyl_groups_sd40.patch

 I just installed sage-5.12.beta3 and the queue doesn't apply.

 -Mike


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.


[sage-combinat-devel] combinat queue down?

2013-08-04 Thread Mike Zabrocki
There seems to be a tangled mess of dependencies happening on the combinat 
queue that I can't see how to fix.

I was working with 5.10 and updated and this was a problem :::
skipping trac_12940_affine_permutations-td.patch - guarded by '+5_11_rc0'
...
applying trac_14516-review-as.patch
unable to find 'sage/combinat/affine_permutation.py' for patching

so then I downloaded and compiled 5.11.rc0 and for some reason #14519 is 
not applying
applying trac_14519-cynthonize_element_wrapper-ts.patch
patching file sage/combinat/affine_permutation.py
Hunk #1 FAILED at 238
Hunk #2 FAILED at 2074
Hunk #3 FAILED at 2085
3 out of 3 hunks FAILED -- saving rejects to file 
sage/combinat/affine_permutation.py.rej

can someone help?

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.




Re: [sage-combinat-devel] Re: tableaux design decisions

2013-07-14 Thread Mike Zabrocki
 WeakTableaux(k, outer_shape, weight, inner_shape = [])

 was better?
My reason for suggesting inner_shape being an optional
argument was that it seemed easier to implement, but
now that I look at it, it isn't really easier, especially
since inner_shape can't be next to weight.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.




Re: [sage-combinat-devel] Re: tableaux design decisions

2013-07-13 Thread Mike Zabrocki
Weak and strong tableaux correspond to chains in the
weak and strong orders and we require that the restriction
to entries = i is a (k+1)-core (or k-bounded partition).

I am suggesting that WeakTableaux input as follows
WeakTableaux( k, [outer_shape, inner_shape], weight )
e.g.
WeakTableaux( 2, [[3,1],[1]], [2] )
represents the WeakTableaux of shape [3,1]/[1] and weight=[2]

OR if the tableaux are not skew...

WeakTableaux( k, shape, weight )
e.g.
WeakTableaux( 2, [3,1], [3] )
represents the WeakTableaux of shape [3,1] and weight=[3]

I am doing the same for StrongTableaux.  I however noticed that this one
change seemed cause a large slowdown and I am not sure why.

-Mike


On Saturday, 13 July 2013 14:42:39 UTC-4, darijgrinberg wrote:

 Hi Anne, 

 sorry, I should have been more clear. Are you planning to design 
 classes for general tableaux (like [[None,3,1],[None,2]]) or only 
 semistandard ones? I'm not sure if those have any weak/strong analoga, 
 so this might fall outside of your scope... 

   Best regards, 
   Darij 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.




Re: [sage-combinat-devel] Re: Skew tableaux

2013-07-10 Thread Mike Zabrocki
What about an optional argument for the inner shape which is by default the 
empty partition?

Tableaux( 5, inner_shape=[2,2] )

This does not need to be the case for Tableau because you would just enter 
your tableau with None entries.

-Mike

On Tuesday, 9 July 2013 16:46:16 UTC-4, Anne Schilling wrote:

 Hi Travis, 

 An extra Boolean skew = False/True is indeed how I have implemented the 
 skew weak k-tableaux. 
 I will push this code soon, so that you can see. 

 Best, 

 Anne 

 On 7/9/13 12:03 PM, Travis Scrimshaw wrote: 
  Hey all, 
 I've started this process in #14101 by having Tableaux create a 
 SkewTableaux parent if it is given a skew shape as input. However, I don't 
 know if we can completely merge the two into a single 
  interface cleanly. For example, how should we take care of creating all 
 (skew) tableaux of size n? At present, the only way I can see it working is 
 using a extra bool argument skew=True or something 
  similar. 
  
  Best, 
  Travis 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.




Re: [sage-combinat-devel] Re: Skew tableaux

2013-07-10 Thread Mike Zabrocki
I prefer that one not need to specify skew= True because it seems redundant.

As for
WeakTableaux_core(3, [[5, 2, 1], [2]], [3,2])
Vs.
WeakTableaux_core(3, [5, 2, 1], inner_shape=[2], [3,2])

I have a slight preference for the former, but I see that the latter is
more verbose and slightly clearer.

-Mike

On Wednesday, July 10, 2013, Anne Schilling wrote:

 Hi Mike,

 Currently I have for the element class of weak tableaux

   sage: from sage.combinat.k_tableau import WeakTableau_core
   sage: t = WeakTableau_core([[None, None, 1, 1, 2], [1, 2], [2]],3, skew
 = True)
   sage: t
   [[None, None, 1, 1, 2], [1, 2], [2]]

 But I agree, I can remove the skew option from the element class, since
 it can be detected
 from the None objects inside the tableau.

 For the parent class, I currently have

   sage: from sage.combinat.k_tableau import WeakTableaux_core
   sage: T = WeakTableaux_core(3, [[5, 2, 1], [2]], [3,2], skew = True)
   sage: T._shape
   ([5, 2, 1], [2])
   sage: T._weight
   (3, 2)

 So the shape is a tuple with the outer and inner shape in accordance with
 skew partitions.
 Of course, this could be changed to

   sage: from sage.combinat.k_tableau import WeakTableaux_core
   sage: T = WeakTableaux_core(3, [5, 2, 1], inner_shape = [2], [3,2])
   sage: T._shape
   ([5, 2, 1], [2])
   sage: T._outer_shape = [5, 2, 1]
   sage: T._inner_shape = [2]
   sage: T._weight
   (3, 2)

 with inner_shape = [] as the default for non-skew tableaux.

 Do people prefer this? Then I will change weak tableaux in this way!
 Let me know soon (before it is too late :-) )!

 Best,

 Anne


 On 7/10/13 4:27 AM, Mike Zabrocki wrote:
  What about an optional argument for the inner shape which is by default
 the empty partition?
 
  Tableaux( 5, inner_shape=[2,2] )
 
  This does not need to be the case for Tableau because you would just
 enter your tableau with None entries.
 
  -Mike
 
  On Tuesday, 9 July 2013 16:46:16 UTC-4, Anne Schilling wrote:
 
  Hi Travis,
 
  An extra Boolean skew = False/True is indeed how I have implemented
 the skew weak k-tableaux.
  I will push this code soon, so that you can see.
 
  Best,
 
  Anne
 
  On 7/9/13 12:03 PM, Travis Scrimshaw wrote:
   Hey all,
  I've started this process in #14101 by having Tableaux create a
 SkewTableaux parent if it is given a skew shape as input. However, I don't
 know if we can completely merge the two into a single
   interface cleanly. For example, how should we take care of
 creating all (skew) tableaux of size n? At present, the only way I can see
 it working is using a extra bool argument skew=True or something
   similar.
  
   Best,
   Travis


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.




[sage-combinat-devel] Re: Skew tableaux

2013-07-03 Thread Mike Zabrocki
I would like to chime in on what Anne said.  I would rather see
that Tableau and Tableaux be able to handle skew-tableaux
than copy-paste the tableaux functions into skew-tableaux.

There is functionality in SkewTableau which is not in Tableau
(cells_by_content, entries_by_content) and vice versa.

-Mike

On Monday, 1 July 2013 15:06:46 UTC-4, darijgrinberg wrote:

 Hi all (Travis in particular since he's working on the file), 

 A few days ago, the lack of functionality in combinat/skew_tableau.py 
 (as opposed to combinat/tableau.py) bit me: I was trying to generate 
 all skew semistandard tableaux of a given shape with a given 
 max_entry, and noticed that there is no such option. This isn't the 
 only thing missing, and it seems that skew_tableau.py never got the 
 love that tableau.py received during development. Are there any 
 updates to the file floating around between combinat people? I am 
 aware of trac #14101 (which depends on #14772, which conflicts with 
 #14808; but even without #14808, the #14101 patch fails on my 
 sage-5.11beta3 at patching sage/combinat/integer_vector_weighted.py 
 for some reason). But as far as I understand, this mainly changes the 
 OOP structure, while leaving the functionality as it is; right, 
 Travis? 

 Anyway, I'm assuming this is the wrong time for me to mess with the 
 file, but once Travis's stuff is positively reviewed, would it be a 
 good idea to basically copypaste the structure of tableau.py into 
 skew_tableau.py (with the appropriate changes to the algorithms), or 
 do you think tableau.py is a mess and should not be imitated? (I'm 
 asking because such things were told to me about some parts of the 
 code; I don't have particular reservations about tableau.py.) 

   Best regards, 
   Darij 

  

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel.
For more options, visit https://groups.google.com/groups/opt_out.




[sage-combinat-devel] Re: Non commutative symmetric functions expansion

2013-06-11 Thread Mike Zabrocki
Hi Matthieu,
Are you talking about the particular realization of the non-commutative 
symmetric functions in an alphabet as in section 7.3 of 
http://arxiv.org/abs/hep-th/9407124 ?
I don't think this has been implemented in Sage.  We can talk about what we 
need to do to program to implement this next week (maybe you want to add it 
to the list of projects?).  It shouldn't be too difficult.

-Mike

On Tuesday, 11 June 2013 10:49:58 UTC-4, Matthieu Deneufchâtel wrote:

 I am looking for the possibility of expanding non commutative symmetric 
 functions over an alphabet.
 Does it exist? Is it so obvious that I missed it?
 Is it possible do the converse (obtain the expansion of a non commutative 
 symmetric function in a certain basis)?
 Best,
 Matthieu



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




[sage-combinat-devel] how do you tell what branch you are in?

2013-02-17 Thread Mike Zabrocki
Hi,

When I start up sage-5.7.beta3 it doesn't tell me what branch I am using. 
 Is there a way to tell?
If there is a command in sage like 'branch()' it would be helpful.  How do 
I find it?

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




Re: [sage-combinat-devel] how do you tell what branch you are in?

2013-02-17 Thread Mike Zabrocki


 It usually tells you when starting sage (nothing for main, or current 
 brench is: ... otherwise). You can also go to the order devel and

I think something is wrong here.
I checked that symbolic link is pointing to a cloned branch.
When I start up, it is running the cloned branch and it does
not give me a message Current Mercurial branch is: ...

Is this a bug or a feature?

-Mike 

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.




[sage-combinat-devel] Re: Sage Days in Bobo-Dioulasso debriefing; Sage in developping countries

2012-11-13 Thread Mike Zabrocki
I could hope for 4-5 that will use Sage in the long run, and 20 that 
 definitely see the point but will get stuck by lack of infrastructure 
 and expertise. 
These sound like great numbers.

I think to break the barrier and make a true sage days really 
productive, I think that you would need to partner with some 
organization like OLPC (one laptop per child) or arrange to 
minimize the problems with your hardware. 

 Well, I have a good contact for that: dad :-) We actually already used 
 Sage on our home OLPC, although only through a remote Sage server. I 

I just mentioned OLPC because that was an organization I had heard of.
I didn't know your dad was associated, but what an awesome contact to 
have.

I don't yet see how to overcome infrastructure problems.
I would summarize my experience as:
1. don't use the internet (you can't count on it anyway)
2. most computers have some old version of Windows
3. a few students will have their own laptops
4. Most students will have little or no computer experience
5. Most want to learn computers and see the point, a few choose to be 
luddites and can afford to because the infrastructure is so unreliable
 
 Of course, the real thing would be to integrate a resource-optimized 
 version of Sage within the Sugar activities. This probably won't be a 
 priority for OLPC, since their main target population is children of 
 age 6-12, but as you say we could explore other organizations as well. 

At the events I have been involved with, our highest priority was to
minimize the infrastructure difficulties.  AIMS in South Africa sounds
like it might be a good place to organize an event since you could
potentially rely on computer access.

-Mike

On Monday, 12 November 2012 04:52:27 UTC-5, Nicolas M. Thiery wrote:

 On Sun, Nov 11, 2012 at 08:07:06PM -0800, Mike Zabrocki wrote: 
 Wow! Nicolas fantastic report.  That was a challenge to do. 

 Thanks :-) 

  I hope you managed a convert or two in Africa. My experience with 
  computer classes as part of a summer school (in Ghana, Kenya, 
  Tanzania and Madagascar) is similar except I never had a wifi 
  network and most of my students didn't have regular computer access. 
  Most of my students were complete novices to the computer, but 
  willing to learn.  Installing sage was several steps beyond what we 
  tried.  I would say that most of the infrastructure that we had 
  access to would not support sage (most computers were dated 
  pre-python, though I did not have the expertise to make this work). 

 I could hope for 4-5 that will use Sage in the long run, and 20 that 
 definitely see the point but will get stuck by lack of infrastructure 
 and expertise. 

 But as you said: �if our problem was only network, we were in pretty 
 good shape to start with�. We had a selection of students that were 
 definitely computer-literate (somehow, the main difficulty was to 
 prevent them from running to facebookall and eat up all the bandwidth 
 whenever the network was working :-) ), even though most did not have 
 programming experience. 

 I think to break the barrier and make a true sage days really 
 productive, I think that you would need to partner with some 
 organization like OLPC (one laptop per child) or arrange to 
 minimize the problems with your hardware. 

 Well, I have a good contact for that: dad :-) We actually already used 
 Sage on our home OLPC, although only through a remote Sage server. I 
 doubt the old models can support running Sage locally, but for the 
 upcoming models we certainly will have a shot (at least running in a 
 terminal). 

 Of course, the real thing would be to integrate a resource-optimized 
 version of Sage within the Sugar activities. This probably won't be a 
 priority for OLPC, since their main target population is children of 
 age 6-12, but as you say we could explore other organizations as well. 

 Cheers, 
 Nicolas 
 -- 
 Nicolas M. Thi�ry Isil nth...@users.sf.net javascript: 
 http://Nicolas.Thiery.name/ 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/lGugmQ_bVsUJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



[sage-devel] Re: Sage Days in Bobo-Dioulasso debriefing; Sage in developping countries

2012-11-13 Thread Mike Zabrocki
I could hope for 4-5 that will use Sage in the long run, and 20 that 
 definitely see the point but will get stuck by lack of infrastructure 
 and expertise. 
These sound like great numbers.

I think to break the barrier and make a true sage days really 
productive, I think that you would need to partner with some 
organization like OLPC (one laptop per child) or arrange to 
minimize the problems with your hardware. 

 Well, I have a good contact for that: dad :-) We actually already used 
 Sage on our home OLPC, although only through a remote Sage server. I 

I just mentioned OLPC because that was an organization I had heard of.
I didn't know your dad was associated, but what an awesome contact to 
have.

I don't yet see how to overcome infrastructure problems.
I would summarize my experience as:
1. don't use the internet (you can't count on it anyway)
2. most computers have some old version of Windows
3. a few students will have their own laptops
4. Most students will have little or no computer experience
5. Most want to learn computers and see the point, a few choose to be 
luddites and can afford to because the infrastructure is so unreliable
 
 Of course, the real thing would be to integrate a resource-optimized 
 version of Sage within the Sugar activities. This probably won't be a 
 priority for OLPC, since their main target population is children of 
 age 6-12, but as you say we could explore other organizations as well. 

At the events I have been involved with, our highest priority was to
minimize the infrastructure difficulties.  AIMS in South Africa sounds
like it might be a good place to organize an event since you could
potentially rely on computer access.

-Mike

On Monday, 12 November 2012 04:52:27 UTC-5, Nicolas M. Thiery wrote:

 On Sun, Nov 11, 2012 at 08:07:06PM -0800, Mike Zabrocki wrote: 
 Wow! Nicolas fantastic report.  That was a challenge to do. 

 Thanks :-) 

  I hope you managed a convert or two in Africa. My experience with 
  computer classes as part of a summer school (in Ghana, Kenya, 
  Tanzania and Madagascar) is similar except I never had a wifi 
  network and most of my students didn't have regular computer access. 
  Most of my students were complete novices to the computer, but 
  willing to learn.  Installing sage was several steps beyond what we 
  tried.  I would say that most of the infrastructure that we had 
  access to would not support sage (most computers were dated 
  pre-python, though I did not have the expertise to make this work). 

 I could hope for 4-5 that will use Sage in the long run, and 20 that 
 definitely see the point but will get stuck by lack of infrastructure 
 and expertise. 

 But as you said: �if our problem was only network, we were in pretty 
 good shape to start with�. We had a selection of students that were 
 definitely computer-literate (somehow, the main difficulty was to 
 prevent them from running to facebookall and eat up all the bandwidth 
 whenever the network was working :-) ), even though most did not have 
 programming experience. 

 I think to break the barrier and make a true sage days really 
 productive, I think that you would need to partner with some 
 organization like OLPC (one laptop per child) or arrange to 
 minimize the problems with your hardware. 

 Well, I have a good contact for that: dad :-) We actually already used 
 Sage on our home OLPC, although only through a remote Sage server. I 
 doubt the old models can support running Sage locally, but for the 
 upcoming models we certainly will have a shot (at least running in a 
 terminal). 

 Of course, the real thing would be to integrate a resource-optimized 
 version of Sage within the Sugar activities. This probably won't be a 
 priority for OLPC, since their main target population is children of 
 age 6-12, but as you say we could explore other organizations as well. 

 Cheers, 
 Nicolas 
 -- 
 Nicolas M. Thi�ry Isil nth...@users.sf.net javascript: 
 http://Nicolas.Thiery.name/ 


-- 
You received this message because you are subscribed to the Google Groups 
sage-devel group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.




[sage-combinat-devel] Re: Sage Days in Bobo-Dioulasso debriefing; Sage in developping countries

2012-11-11 Thread Mike Zabrocki
Wow! Nicolas fantastic report.  That was a challenge to do.  I hope
you managed a convert or two in Africa.  My experience with computer
classes as part of a summer school (in Ghana, Kenya, Tanzania and
Madagascar) is similar except I never had a wifi network and most 
of my students didn't have regular computer access.  

Most of my students were complete novices
to the computer, but willing to learn.  Installing sage was several
steps beyond what we tried.  I would say that most of the infrastructure
that we had access to would not support sage (most computers were
dated pre-python, though I did not have the expertise to make this work).

I think to break the barrier and make a true sage days really productive,
I think that you would need to partner with some organization like OLPC 
(one laptop per child) or arrange to minimize the problems with 
your hardware.

-Mike

On Sunday, 11 November 2012 04:00:34 UTC-5, Nicolas M. Thiery wrote:

 Dear Sage devs, 

 The fall school on Discrete Mathematics in Bobo Dioulasso, Burkina 
 Faso, aka Sage Days 43, just finished. For two weeks we had courses 
 (combinatorics of words, dynamics, tilings, ...) interspersed with 
 on-hands tutorials using Sage. The public consisted mostly from 
 graduate students, from subsaharian Africa and some further away 
 countries. 

 That was a good occasion for a real-life evaluation of a claim I have 
 been desiring to make for a long time: �Sage, being open-source, is 
 well adapted for universities in developing countries�. 

 Let's see about this. 

 A couple words of context: 
 -- 

 - 70 participants total; in average 40-50 were there. 
 - Most participants had a laptop (or netbook for a few of them): 
   - 90%: windows, 5% mac, 5% Linux Ubuntu (usually in double-boot with 
 Windows) 
   - Laptop age ranging from 2003 to 2012; 4 years on average 
   - RAM: 500k-6Gb; 1Gb on average? 
 - Network: one ADSL line for 60 persons in the conference center 
   Well, when it actually worked, which was not that often. 
   We finished using a cell-phone shared over wifi. 
   The local wireless network itself was down quite often. 
   No network at the university itself or nearby 
 - Among the organizers were Sage devs with good experience on running 
   Sage workshops and doing system/network administration, ... 
 - Sam had brought a big bunch of power cables. I screwed up not 
   bringing my own wireless router to at least guarantee a reliable 
   local network. 

 Strategies we tried or considered: 
 -- 

 (a) Installing Sage on Linux/Mac with the binaries from Sagemath.org 
 (b) Installing Sage on Linux/Mac from sources 
 (c) Installing Sage on Linux from a custom built fat binary 
 (d) Installing Sage on Windows with the virtual machine 
 (e) Running a Sage server on my laptop (8 cores, 8Gb) 
 (f) Using a remote Sage server 
 (g) Installing Linux and reducing the problem to (a-c) 
 (h) Booting on a live Debian USB key, custom-build by Thierry Monteil 
 with Sage, self-cloning and persistence. 
 (i) Using a local PC lab after installing Sage on them 

 I would like to use the occasion to send my kudos to all those who 
 strive hard at making Sage easier to use one way or the other. 

 How it went: 
  

 (a) Went smoothly on Mac when appropriate binaries were available. We 
 had to recompile a few of those binaries. 

 (a) failed most of the time on Linux by lack of gfortran. Since we did 
 not have a reasonable network, apt-get install was not an option. 
 We did not have iso's of all the Ubuntu versions that were in use. 
 3D plotting was usually not available (by lack of appropriate Java 
 plug-ins). 

 (b) Compiling from source was not a viable option on Linux for the 
 same reason as above: build-essentials was usually not there. On 
 Mac that was ok, provided we had under hand the appropriate 
 version of XCode. 

 (c) This fat binary was built by Thierry Monteil on an old pentium 3 
 (!) with a minimal Debian install. Installation and usage went 
 smoothly, except that 3D plotting was usually not available. 

 (d) Virtual machine: Installation went smoothly on about 20 machines 
 (with close guidance). It failed on 2-3 machines due to resource 
 limitations (disk, ...). 

 However, except for about five recent machines, the memory 
 footprint was just too high: any non trivial calculation or plot 
 made the laptop swap and become simply too slow to use. 

 The french keyboard was not properly self-detected. Due to the 
 network, we could not look up on the web for help. We ended up 
 finding how to configure it from a shell. I'll create a ticket. 

 The Sage version available was a bit old (5.1) though that was not 
 an issue for us this time (but it could have been). 

 The usage was on the complex side for most participants. They 
 typically tended to 

[sage-devel] Re: Sage Days in Bobo-Dioulasso debriefing; Sage in developping countries

2012-11-11 Thread Mike Zabrocki
Wow! Nicolas fantastic report.  That was a challenge to do.  I hope
you managed a convert or two in Africa.  My experience with computer
classes as part of a summer school (in Ghana, Kenya, Tanzania and
Madagascar) is similar except I never had a wifi network and most 
of my students didn't have regular computer access.  

Most of my students were complete novices
to the computer, but willing to learn.  Installing sage was several
steps beyond what we tried.  I would say that most of the infrastructure
that we had access to would not support sage (most computers were
dated pre-python, though I did not have the expertise to make this work).

I think to break the barrier and make a true sage days really productive,
I think that you would need to partner with some organization like OLPC 
(one laptop per child) or arrange to minimize the problems with 
your hardware.

-Mike

On Sunday, 11 November 2012 04:00:34 UTC-5, Nicolas M. Thiery wrote:

 Dear Sage devs, 

 The fall school on Discrete Mathematics in Bobo Dioulasso, Burkina 
 Faso, aka Sage Days 43, just finished. For two weeks we had courses 
 (combinatorics of words, dynamics, tilings, ...) interspersed with 
 on-hands tutorials using Sage. The public consisted mostly from 
 graduate students, from subsaharian Africa and some further away 
 countries. 

 That was a good occasion for a real-life evaluation of a claim I have 
 been desiring to make for a long time: �Sage, being open-source, is 
 well adapted for universities in developing countries�. 

 Let's see about this. 

 A couple words of context: 
 -- 

 - 70 participants total; in average 40-50 were there. 
 - Most participants had a laptop (or netbook for a few of them): 
   - 90%: windows, 5% mac, 5% Linux Ubuntu (usually in double-boot with 
 Windows) 
   - Laptop age ranging from 2003 to 2012; 4 years on average 
   - RAM: 500k-6Gb; 1Gb on average? 
 - Network: one ADSL line for 60 persons in the conference center 
   Well, when it actually worked, which was not that often. 
   We finished using a cell-phone shared over wifi. 
   The local wireless network itself was down quite often. 
   No network at the university itself or nearby 
 - Among the organizers were Sage devs with good experience on running 
   Sage workshops and doing system/network administration, ... 
 - Sam had brought a big bunch of power cables. I screwed up not 
   bringing my own wireless router to at least guarantee a reliable 
   local network. 

 Strategies we tried or considered: 
 -- 

 (a) Installing Sage on Linux/Mac with the binaries from Sagemath.org 
 (b) Installing Sage on Linux/Mac from sources 
 (c) Installing Sage on Linux from a custom built fat binary 
 (d) Installing Sage on Windows with the virtual machine 
 (e) Running a Sage server on my laptop (8 cores, 8Gb) 
 (f) Using a remote Sage server 
 (g) Installing Linux and reducing the problem to (a-c) 
 (h) Booting on a live Debian USB key, custom-build by Thierry Monteil 
 with Sage, self-cloning and persistence. 
 (i) Using a local PC lab after installing Sage on them 

 I would like to use the occasion to send my kudos to all those who 
 strive hard at making Sage easier to use one way or the other. 

 How it went: 
  

 (a) Went smoothly on Mac when appropriate binaries were available. We 
 had to recompile a few of those binaries. 

 (a) failed most of the time on Linux by lack of gfortran. Since we did 
 not have a reasonable network, apt-get install was not an option. 
 We did not have iso's of all the Ubuntu versions that were in use. 
 3D plotting was usually not available (by lack of appropriate Java 
 plug-ins). 

 (b) Compiling from source was not a viable option on Linux for the 
 same reason as above: build-essentials was usually not there. On 
 Mac that was ok, provided we had under hand the appropriate 
 version of XCode. 

 (c) This fat binary was built by Thierry Monteil on an old pentium 3 
 (!) with a minimal Debian install. Installation and usage went 
 smoothly, except that 3D plotting was usually not available. 

 (d) Virtual machine: Installation went smoothly on about 20 machines 
 (with close guidance). It failed on 2-3 machines due to resource 
 limitations (disk, ...). 

 However, except for about five recent machines, the memory 
 footprint was just too high: any non trivial calculation or plot 
 made the laptop swap and become simply too slow to use. 

 The french keyboard was not properly self-detected. Due to the 
 network, we could not look up on the web for help. We ended up 
 finding how to configure it from a shell. I'll create a ticket. 

 The Sage version available was a bit old (5.1) though that was not 
 an issue for us this time (but it could have been). 

 The usage was on the complex side for most participants. They 
 typically tended to 

Re: [sage-combinat-devel] Re: Don't use combinat with 5.4.rc2 (fixed)

2012-10-30 Thread Mike Zabrocki
Hi Hugh,
 Thanks for looking into it.  I switched to 5.4.rc2 and since no one 
else complained I'm guessing it was a glitch on my computer.
-Mike

On Tuesday, 30 October 2012 16:11:55 UTC-4, Hugh Thomas wrote:

 Hi Mike--

 Sorry, I was away from email for a few days.  

 9265 was merged in 5.4.beta1; it then got unmerged again.  So the guards 
 should be set so neither of those patches would get applied to 5.4.beta1.  
 If you didn't run sage -combinat update explicitly, but are just using hg 
 to pull patches, then your guards may not be set right; you should either 
 run sage -combinat update or else add 5_4_rc2 to your 
 sage-xxx/devel/sage-combinat/.hg/patches/guards file.

 For me, at the moment, the queue applies smoothly on 5.4.beta1, so maybe 
 the further problem you encountered was some temporary glitch.  (Unless 
 someone fixed it in the meantime?)

 cheers,

 Hugh




 On Wednesday, October 24, 2012 1:18:53 PM UTC-7, Mike Zabrocki wrote:

 Hi,

 I disabled both of these patches and then I run into
 trac_12876_category-fix_abstract_class-nt-rel11521.patch
 doesn't apply. It doesn't look like these patches touch
 the same files, but this patch hasn't been touched in a
 few months so something must be conflicting.
 Any ideas?

 I'm compiling 5.4.rc2 now, but that will take a while.

 -Mike


 On Wednesday, 24 October 2012 14:23:18 UTC-4, Mike Zabrocki wrote:

 Hi,
 Something went wrong here for me using 5.4.beta1.

 The lines in the series files are:
 trac_9265_tableaux_categories_am.patch  #+5_4_beta0
 trac_9265_tableaux_categories_am-duplicate.patch#-5_4_rc2

 Are those right?
 I'd like to push some changes but I don't want to mess things up
 with this patch.

 -Mike

 On Tuesday, 23 October 2012 02:10:18 UTC-4, Hugh Thomas wrote:

 You're welcome.  It's actually quite fun (in a somewhat perverse way).  

 After having set things up as I did, I realized it woud be even cleaner 
 if I could simply have two different lines in the series file pointing to 
 the same patch, but, alas, mercurial doesn't let you do that.  

 cheers,

 Hugh

 On Monday, October 22, 2012 8:54:51 AM UTC-7, Nicolas M. Thiery wrote:

 On Sat, Oct 20, 2012 at 01:13:23AM -0700, Hugh Thomas wrote: 
  I think this is now fixed, by introducing a second copy of 
  trac_9265_tableaux_categories_am.patch which is guarded so it will 
 only be 
  applied to 5.4.rc2 or later. 

 Ah yes, that works! 

  This should mean that the queue will apply cleanly against 5.4 and 
 all its 
  prerelease versions. 

 Thanks for going the extra mile for our devs :-) 

 Cheers, 
 Nicolas 
 -- 
 Nicolas M. Thi�ry Isil nth...@users.sf.net 
 http://Nicolas.Thiery.name/ 



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/44i-f6VWcosJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Re: Don't use combinat with 5.4.rc2 (fixed)

2012-10-24 Thread Mike Zabrocki
Hi,
Something went wrong here for me using 5.4.beta1.

The lines in the series files are:
trac_9265_tableaux_categories_am.patch  #+5_4_beta0
trac_9265_tableaux_categories_am-duplicate.patch#-5_4_rc2

Are those right?
I'd like to push some changes but I don't want to mess things up
with this patch.

-Mike

On Tuesday, 23 October 2012 02:10:18 UTC-4, Hugh Thomas wrote:

 You're welcome.  It's actually quite fun (in a somewhat perverse way).  

 After having set things up as I did, I realized it woud be even cleaner if 
 I could simply have two different lines in the series file pointing to the 
 same patch, but, alas, mercurial doesn't let you do that.  

 cheers,

 Hugh

 On Monday, October 22, 2012 8:54:51 AM UTC-7, Nicolas M. Thiery wrote:

 On Sat, Oct 20, 2012 at 01:13:23AM -0700, Hugh Thomas wrote: 
  I think this is now fixed, by introducing a second copy of 
  trac_9265_tableaux_categories_am.patch which is guarded so it will only 
 be 
  applied to 5.4.rc2 or later. 

 Ah yes, that works! 

  This should mean that the queue will apply cleanly against 5.4 and all 
 its 
  prerelease versions. 

 Thanks for going the extra mile for our devs :-) 

 Cheers, 
 Nicolas 
 -- 
 Nicolas M. Thi�ry Isil nth...@users.sf.net 
 http://Nicolas.Thiery.name/ 



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/kJAgrwGLm5oJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Re: Don't use combinat with 5.4.rc2 (fixed)

2012-10-24 Thread Mike Zabrocki
Hi,

I disabled both of these patches and then I run into
trac_12876_category-fix_abstract_class-nt-rel11521.patch
doesn't apply. It doesn't look like these patches touch
the same files, but this patch hasn't been touched in a
few months so something must be conflicting.
Any ideas?

I'm compiling 5.4.rc2 now, but that will take a while.

-Mike


On Wednesday, 24 October 2012 14:23:18 UTC-4, Mike Zabrocki wrote:

 Hi,
 Something went wrong here for me using 5.4.beta1.

 The lines in the series files are:
 trac_9265_tableaux_categories_am.patch  #+5_4_beta0
 trac_9265_tableaux_categories_am-duplicate.patch#-5_4_rc2

 Are those right?
 I'd like to push some changes but I don't want to mess things up
 with this patch.

 -Mike

 On Tuesday, 23 October 2012 02:10:18 UTC-4, Hugh Thomas wrote:

 You're welcome.  It's actually quite fun (in a somewhat perverse way).  

 After having set things up as I did, I realized it woud be even cleaner 
 if I could simply have two different lines in the series file pointing to 
 the same patch, but, alas, mercurial doesn't let you do that.  

 cheers,

 Hugh

 On Monday, October 22, 2012 8:54:51 AM UTC-7, Nicolas M. Thiery wrote:

 On Sat, Oct 20, 2012 at 01:13:23AM -0700, Hugh Thomas wrote: 
  I think this is now fixed, by introducing a second copy of 
  trac_9265_tableaux_categories_am.patch which is guarded so it will 
 only be 
  applied to 5.4.rc2 or later. 

 Ah yes, that works! 

  This should mean that the queue will apply cleanly against 5.4 and all 
 its 
  prerelease versions. 

 Thanks for going the extra mile for our devs :-) 

 Cheers, 
 Nicolas 
 -- 
 Nicolas M. Thi�ry Isil nth...@users.sf.net 
 http://Nicolas.Thiery.name/ 



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/qO6_Bm7B8JQJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



[sage-combinat-devel] revisions to dyck_word.py - suggestions for how to handle maps?

2012-10-24 Thread Mike Zabrocki
Hi,

I am currently making some revisions to dyck_word.py and collecting some 
changes that were made in patches by Christian and Florent.  I just pushed 
some changes on the combinat server in case there are users who are 
interested and would like to add feedback about how certain functions are 
handled.

I'm writing to revive a topic that came up before in the following thread:
https://groups.google.com/d/msg/sage-combinat-devel/wpRtfFGOaq4/Vs8Jc0qco60J

Now we have something concrete to discuss because there are many injections 
from Dyck words to other combinatorial objects and they are implemented as:
D.to_132_avoiding_permutation
D.to_312_avoiding_permutation
D.to_321_avoiding_permutation
D.to_Catalan_code
D.to_area_sequence
D.to_non_decreasing_parking_function
D.to_noncrossing_partition
D.to_noncrossing_permutation
D.to_ordered_tree
D.to_pair_of_standard_tableaux
D.to_partition
D.to_path_string
D.to_standard_tableau
D.to_triangulation

The thing is that for some of these methods there are several 
injections/bijections.  For example, there may be many maps from Dyck words 
to xyz-avoiding permutations or noncrossing_partitions.  Do you have 
suggestions about how to handle the duplicates?

Example: I want to add another to_noncrossing_partition method, but I 
wouldn't want to call it
D.to_noncrossing_partition_1
vs.
D.to_noncrossing_partition_2
since neither name is very helpful.

Christian had one way of handling this that I thought was OK, but I thought 
not ideal.
D.to_permutation(Bandlow-Kilpatrick)
which is now
D.to_312_avoiding_permutation()

and

D.to_permutation(Krattenthaler)
which is now
D.to_132_avoiding_permutation()

I thought it was best to break up to_permutation because these maps weren't 
the same set of permutations, but there are different bijections for the 
exact same sets that are different and perhaps both are interesting because 
they preserve different statistics.  I would like to still these variations 
in maps, but I would like suggestions about how to resolve the name space 
if possible.

Christian may have more to add, because he has thought about this more than 
I have and he is also motivated by the combinatorial statistics patch.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/anca40pepIgJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



[sage-combinat-devel] Re: Macdonald polynomials for root systems

2012-08-30 Thread Mike Zabrocki
Hi Christian,
I haven't done it (at least not recently), but the way it is done in type A
in sage is similar to the way it should probably be
done in other types, namely by following the formulas in this
paper by van Diejen-Lapointe-Morse:
http://xxx.lanl.gov/pdf/math/0303263.pdf

The posting mentions Macdonald-Koornwinder functions
and the paper talks only about Macdonald functions
so hopefully there is not a disconnect there.

-Mike

On Thursday, 30 August 2012 03:47:47 UTC-4, Christian Stump wrote:

 This is something we should certainly have earlier or later (or maybe 
 someone has code already?): 


 http://mathoverflow.net/questions/105685/explicit-method-to-compute-macdonald-koornwinder-functions
  

 Christian 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/ulXMsmboZrwJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] bug in symmetric function scalar product?

2012-08-29 Thread Mike Zabrocki
Hi,

This one looks really serious.  In some ways seems to be computer
dependent because my answers seem to have twice as
many digits as yours.

sage: Sym = SymmetricFunctions(QQ)
sage: p = Sym.p()
sage: s = Sym.s()
sage: s(p[2,2])
s[1, 1, 1, 1] - s[2, 1, 1] + 2*s[2, 2] - s[3, 1] + s[4]
sage: g = s(p([1]*47))
sage: s(p[2,2])   
s[1, 1, 1, 1] - s[2, 1, 1] - 1152912726858932132*s[2, 2] - s[3, 1] + s[4]
sage: s(p[2,2])  
s[1, 1, 1, 1] - s[2, 1, 1] + 3458773291570539007*s[2, 2] - s[3, 1] + s[4]
sage: s(p[2,2])
s[1, 1, 1, 1] - s[2, 1, 1] - 1152912726855831925*s[2, 2] - s[3, 1] + s[4]

It doesn't help to fix the problem by redefining the ring or
'reseting' sage:

sage: reset()
sage: Sym = SymmetricFunctions(QQ['t'])
sage: s = Sym.s()  
sage: p = Sym.p()  
sage: s(p[2,2])
s[1, 1, 1, 1] - s[2, 1, 1] - 1152912726855247442*s[2, 2] - s[3, 1] + s[4]

I have a suspicion that this is coming from symmetrica.
If we can track the error down to it, it may require another large
rewrite of the symmetric function code.

-Mike

On Wednesday, 29 August 2012 11:40:57 UTC-4, Anne Schilling wrote:

 On 8/29/12 8:20 AM, Franco Saliola wrote: 
  Someone sent me the following sage session, which I cannot 
 reproduce, 
  but I'm asking whether this is a known issue and whether someone can 
  reproduce it: 
  
  
  sage: p=SFAPower(QQ) 
  sage: s=SFASchur(QQ) 
  
  sage: f = p([1,1,1,1,1,1,1,1,1,1,1])/990 + p([2,2,2,2,2,1])/10 + 
  p([5,5,1])/10 - p([10,1])/10 + p([9,1,1])/3 + p([3,3,3,1,1])/9 + 
  5*p([11])/11 
  
  sage: [f.scalar(s(q)) for q in Partitions(11)] 
  [1, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 2, 0, 1, 1, 1, 1, 0, 0, -1, 2, 1, 
  -1, 2, 4, 3, 0, 1, 0, 2, 1, 0, 1, 1, 2, 1, 127020063634, 1, 1, 0, 0, 
  158403414193, 0, 1, -1, 1, 0, 19558976098, 0, 1, 3804836920632, 
  29874454, 6021978496, -1, 0, 1] 
  
  Expected: 
  [1, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 2, 0, 1, 1, 1, 1, 0, 0, -1, 2, 1, 
  -1, 2, 4, 3, 0, 1, 0, 2, 1, 0, 1, 1, 2, 1, 2, 1, 1, 0, 0, 3, 0, 1, 
 -1, 
  1, 0, 2, 0, 1, 0, 0, 0, -1, 0, 1] 
  
  I'm wondering: did this happen during a session, or is the bug 
 triggered 
  deterministically after the preceding sequences of command ? 
  
  It sure looks likely, based on the following session (with 5.3.beta2). 
  
  To begin with, let's do a change of basis in a small degree: 
  
  sage: p = SymmetricFunctions(QQ).powersum() 
  sage: s = SymmetricFunctions(QQ).schur() 
  sage: s(p[2,2]) 
  s[1, 1, 1, 1] - s[2, 1, 1] + 2*s[2, 2] - s[3, 1] + s[4] 
  
  Now let's do one in a larger degree: 
  
  sage: time g = s(p([1]*47)) 
  Time: CPU 19.16 s, Wall: 20.91 s 
  
  Now let's do that first one again: 
  
  sage: s(p[2,2]) 
  s[1, 1, 1, 1] - s[2, 1, 1] + 4571483302*s[2, 2] - s[3, 1] + s[4] 
  
  That's not the correct answer ! And the next time you ask Sage, it 
  gives different, still incorrect, answers: 
  
  sage: s(p[2,2]) 
  s[1, 1, 1, 1] - s[2, 1, 1] + 4614252243*s[2, 2] - s[3, 1] + s[4] 
  sage: s(p[2,2]) 
  s[1, 1, 1, 1] - s[2, 1, 1] + 4634718110*s[2, 2] - s[3, 1] + s[4] 
  sage: s(p[2,2]) 
  s[1, 1, 1, 1] - s[2, 1, 1] + 4631047636*s[2, 2] - s[3, 1] + s[4] 

 I can confirm that this happens for me as well (though with different 
 numbers): 

 sage: p = SymmetricFunctions(QQ).powersum() 
 sage: s = SymmetricFunctions(QQ).schur() 
 sage: s(p[2,2]) 
 s[1, 1, 1, 1] - s[2, 1, 1] + 2*s[2, 2] - s[3, 1] + s[4] 
 sage: time g = s(p([1]*47)) 
 Time: CPU 14.38 s, Wall: 14.87 s 
 sage: s(p[2,2]) 
 s[1, 1, 1, 1] - s[2, 1, 1] + 4570475192*s[2, 2] - s[3, 1] + s[4] 
 sage: s(p[2,2]) 
 s[1, 1, 1, 1] - s[2, 1, 1] + 4614292718*s[2, 2] - s[3, 1] + s[4] 

 Best, 

 Anne 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/hJTez9BLxXgJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Re: Names for the bases of symmetric functions

2012-08-27 Thread Mike Zabrocki
I want to weigh in on the choice of homogeneous/complete/homogeneous 
complete.
I posted some comments on the trac server.

 Hugh agrees with me (and Alain!) that homogeneous should be changed 
 to complete. Other opinions? 
I am truly afraid of what Alain has to say about this subject.
He is very likely to suggest calling it the S basis. :)

I think that given that it typically abbreviated 'h' that it would be a bad
idea to banish the word 'homogeneous' from its name.  I think that
references generally refer to it as the complete homogeneous basis
or the homogeneous basis or the complete basis.

-Mike


On Monday, 27 August 2012 18:26:02 UTC-4, Andrew Mathas wrote:



 On Tuesday, 28 August 2012 07:35:27 UTC+10, Nicolas M. Thiery wrote:

 On Mon, Aug 27, 2012 at 02:29:34PM -0700, Anne Schilling wrote: 
  Sym ... in the LLT spin basis at level 3. 


 I think it should be ... in the LLT spin basis OF level 3. 

 Andrew


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/hHa9234uMGYJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



[sage-combinat-devel] the degree of an element in QSym/NSym/Sym

2012-08-13 Thread Mike Zabrocki
Franco posted this question on the trac server.  I thought I would post my 
answer here in case there is some discussion.

  '''Outstanding question about the degree of an element:''' what do we 
want
 as the default behaviour? Should it:
 a. raise an error if the element is not homogeneous; or
 b. return the maximum of the degrees of the homogeneous summands?

The main use that I have for this function is that I want to
sum up to the degree of the symmetric function.  In this
usage, the degree should be the maximum (answer: a).

This is also consistent with what the degree function does
in symmetric functions and that is consistent with the degree
function of polynomials in a single variable.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/TIaFE0zYH7sJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



[sage-combinat-devel] Re: the degree of an element in QSym/NSym/Sym

2012-08-13 Thread Mike Zabrocki
Sorry I meant :: answer b.
return the maximum of the degrees of the homogeneous summands

 I think that the default behaviour for categories like GradedAlgebra, 
GradedAlgebraWithBasis, GradedModule, ... should be to return an error if 
the element is not homogeneous. I have some code which works with graded 
modules for a graded algebra and this is what my degree method does -- and 
is_homogeneous method simply checks to see whether degree() returns False.

I think that the function maximum_degree must be implemented
somewhere.  In symmetric functions, this function is called simply
degree.

 In cases like symmetric functions, where you are essentially working with 
polynomials,
The behavior should be the same for quasi-symmetric functions and
symmetric functions and non-commutative symmetric functions.
Quasi-symmetric functions can be considered as polynomials also
(if you consider symmetric functions as polynomials) and symmetric
functions is a sub algebra of quasi-symmetric functions.  In this case
non-commutative symmetric functions can also be considered as a
subspace of non-commutative polynomials.

-Mike

On Monday, 13 August 2012 18:18:22 UTC-4, Mike Zabrocki wrote:

 Franco posted this question on the trac server.  I thought I would post my 
 answer here in case there is some discussion.

   '''Outstanding question about the degree of an element:''' what do we 
 want
  as the default behaviour? Should it:
  a. raise an error if the element is not homogeneous; or
  b. return the maximum of the degrees of the homogeneous summands?

 The main use that I have for this function is that I want to
 sum up to the degree of the symmetric function.  In this
 usage, the degree should be the maximum (answer: a).

 This is also consistent with what the degree function does
 in symmetric functions and that is consistent with the degree
 function of polynomials in a single variable.

 -Mike


On Monday, 13 August 2012 18:18:22 UTC-4, Mike Zabrocki wrote:

 Franco posted this question on the trac server.  I thought I would post my 
 answer here in case there is some discussion.

   '''Outstanding question about the degree of an element:''' what do we 
 want
  as the default behaviour? Should it:
  a. raise an error if the element is not homogeneous; or
  b. return the maximum of the degrees of the homogeneous summands?

 The main use that I have for this function is that I want to
 sum up to the degree of the symmetric function.  In this
 usage, the degree should be the maximum (answer: a).

 This is also consistent with what the degree function does
 in symmetric functions and that is consistent with the degree
 function of polynomials in a single variable.

 -Mike


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/ptjUX8tFXXgJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



[sage-combinat-devel] Re: several alphabets for symmetric functions

2012-07-20 Thread Mike Zabrocki
Hi Martin,

I just got around to looking at your code a little.

I recognize your function my_plethysm() because this is
simply .coproduct()

sage: Sym = SymmetricFunctions(QQ)
sage: Sym.inject_shorthands()
sage: p([1,1,1]).coproduct()
p[] # p[1, 1, 1] + 3*p[1] # p[1, 1] + 3*p[1, 1] # p[1] + p[1, 1, 1] # p[]
sage: h([3]).coproduct()
h[] # h[3] + h[1] # h[2] + h[2] # h[1] + h[3] # h[]


I am not quite sure what your function 'multi_schur' is doing.
If you want to evaluate a symmetric function at a difference of
alphabets, you should apply the antipode to the second tensor
(antipode is the effect of changing X - -X).

I think your change_basis should be in sage and it
possibly isn't.  For instance, if I type:
sage: p.tensor_square()( h([3]).coproduct() )
(which is what I think should be 
all hell breaks loose.
But 
sage: change_basis([p,p],h([3]).coproduct())
works nicely.

-Mike

On Tuesday, 17 July 2012 18:29:26 UTC-4, Martin wrote:

 Hi Mike, Nicolas, Viviane, *, 

 I implemented naive algorithms to do plethysm and change of basis, 
 together with some tests from Lascoux' book.  I don't really know what 
 the coproduct should be.  I am convinced that one could do much better, 
 but at least it's a start.  (I now see that I should probably have 
 looked at the implementation of plethysm in sfa first...) 

 In particular, one might want to have clever specialisations of 
 alphabets and also finite alphabets -- probably via include and exclude 
 as in the single alphabet case. 

 (I found it slightly curious to discover that p(X-Y) = 1, by the way.) 

 I have absolutely no idea about where to put this in the sources.  Help 
 is much appreciated. 

 One other thing: is this actually related to Viviane's work? 

 All the best, 

 Martin 



-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/rFiBCAtKriMJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Re: queue broken

2012-07-13 Thread Mike Zabrocki
Hi,
We are in the last few hours of sage days and I had to disable a few 
patches.
I didn't figure what the cause was in these cases, only that they weren't 
working
for me now.
We made changes on symmetric functions so I am sure that Martin's
patch is failing to apply at least partly because of that.

sf_principal_specialization-mr.patch
trac_6538-partitions_max_slope-ts.patch 

I don't know what is failing with Travis' patch.
I'll try to restore them later.

-Mike


On Friday, 13 July 2012 09:14:47 UTC-5, Anne Schilling wrote:

 Hi Travis, 

 For me everything applies fine under sage-5.1. Which version of sage are 
 you using? 
 You should upgrade to sage-5.1 most likely! 

 Anne 

 On 7/13/12 4:23 AM, Travis Scrimshaw wrote: 
  Hey, 
 I'm also getting an error when applying 
 trac_9265_tableaux_categories_jb.patch. Is this related? 
  
  Best, 
  Travis 
  
  
  On Thursday, July 12, 2012 7:46:15 PM UTC+1, Anne Schilling wrote: 
  
  Hi! 
  
  The patch queue is currently broken with sage-5.1. 
  Nicolas claims that he fixed this before lunch, so Chris, 
  did you make changes since that break the queue? 
  
  Thanks, 
  
  Anne 
  


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/Qiv01TbSDOQJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Re: namings for eulerian and mahonian statistics

2012-06-23 Thread Mike Zabrocki
The main reason I don't like the SF-like solution for naming statistics (at 
least in the way I can foresee it being implemented) is that you would need 
to assign a variable in order to use tab completion:
m = d.maps() 
m.tab

This is *ok*, but it seems quite awkward to me.

I think that your solution of having the extension immediately after maps 
gets around this:
d.maps.tab
The problem here is that other combinatorial objects don't have this 
behavior and you might be hiding the maps for a user that doesn't know they 
are there.
I am getting less an less worried about this solution, because it is 
exactly the point hiding the maps.

I was able to make an example of this behavior very easily.

In the file dyck_word.py, insert the following lines:
class DW_Maps_class():

new class where all maps should go!
contains now two copies of the identity map.

def __init__(self, dw):
self._parent = dw

def map1( self ):
return self

def map2( self ):
return self

class DyckWord_class(CombinatorialObject):

def __init__(self, l, latex_options={}):
CombinatorialObject.__init__(self, l)
self.maps = DW_Maps_class( self )  this is the magic line here
self._latex_options = dict(latex_options)
if tikz_scale not in self._latex_options:
self._latex_options[tikz_scale] = 1
if diagonal not in self._latex_options:
self._latex_options[diagonal] = False
if line width not in self._latex_options:
self._latex_options[line width] = 
2*self._latex_options[tikz_scale]
if color not in self._latex_options:
self._latex_options[color] = black
if bounce path not in self._latex_options:
self._latex_options[bounce path] = False
if peaks not in self._latex_options:
self._latex_options[peaks] = False
if valleys not in self._latex_options:
self._latex_options[valleys] = False

Now when you compile this you get the following:

sage: D = DyckWord([1,0])
sage: D.maps.tab
D.maps.map1  D.maps.map2  
sage: D.maps._parent == D
True

-Mike

On Friday, 22 June 2012 09:38:25 UTC-4, Anne Schilling wrote:

 Hi Christian, 

  I already asked this, but no one seemed to have an opinion on that... 
  
  I have now implemented 5 or 6 bijections between Dyck paths and 
  subsets of permutations (pattern-avoiding or noncrossing). I think 
  that it is not practical to have a name for each of them since they 1. 
  do not necessarily have names in the literature and 2. the list of 
  methods for Dyck paths (and actually many other objects) becomes more 
  and more confusing in tab completion which I find not very user 
  friendly. 
  
  I currently have 
  
  DyckWord.to_permutation(bijection=None) 
  
  and then the optional argument bijection is used to differ between the 
  bijections. But another solution would actually be to have 
  
  sage: d = DyckWord([]) 
  sage: d.to_permutation.tab 
  
  yields a list of all possible maps 
  
  and even more 
  
  sage: d.statistics.tab 
  
  yields a list of all combinatorial statistics (Anne actually requested 
  such a use case some time ago). Using this behavior would make the 
  statistics not appear directly when typing 
  
  sage: d.tab 
  
  Only statistics would appear here. The same maybe for maps, then we 
  would not have 
  
  sage: d.to_permutation.tab 
  
  but 
  
  sage: d.maps.tab 
  
  would give a list of maps and 
  
  sage: d.maps.to_permutation.tab 
  
  then the list of maps to permutations. This way, we would have a 
  better organization of the combinatorial maps and statistics (which 
  would be very helpful, I guess, if we keep implementing more and more 
  of these), and the tab completion becomes arranged in a user readable 
  way. 
  
  a. what do you think about such a design? 

 I think such a design is a good idea. I am not completely sure whether 

 d.maps.to_permutation.tab 

 is really needed. Perhaps 

 d.to_permutation.tab 

 is enough. 

  b. it seems to be not standard in object-oriented programming. what 
  are the down-sides? 
  
  c. i would have no idea how to reach such an implementation. 

 I think a similar implementation was recently done for symmetric 
 functions, by doing 

 sage: Sym = SymmetricFunctions(QQ['q','t']) 
 sage: Mac = Sym.macdonald() 
 sage: Ht = Mac.Ht() 

 so you can probably look in /combinat/sf/ (with the new symmetric function 
 patch applied) 
 to see how it is done. 

 Best, 

 Anne 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/q8-Lf2WWAN0J.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 

Re: [sage-combinat-devel] Re: namings for eulerian and mahonian statistics

2012-06-23 Thread Mike Zabrocki
Oops.  I didn't try out my identity maps, but I realized that they should 
really be returning
return self._parent

and not self...
-Mike

On Saturday, 23 June 2012 08:23:20 UTC-4, Mike Zabrocki wrote:

 The main reason I don't like the SF-like solution for naming statistics 
 (at least in the way I can foresee it being implemented) is that you would 
 need to assign a variable in order to use tab completion:
 m = d.maps() 
 m.tab

 This is *ok*, but it seems quite awkward to me.

 I think that your solution of having the extension immediately after maps 
 gets around this:
 d.maps.tab
 The problem here is that other combinatorial objects don't have this 
 behavior and you might be hiding the maps for a user that doesn't know they 
 are there.
 I am getting less an less worried about this solution, because it is 
 exactly the point hiding the maps.

 I was able to make an example of this behavior very easily.

 In the file dyck_word.py, insert the following lines:
 class DW_Maps_class():
 
 new class where all maps should go!
 contains now two copies of the identity map.
 
 def __init__(self, dw):
 self._parent = dw

 def map1( self ):
 return self

 def map2( self ):
 return self

 class DyckWord_class(CombinatorialObject):

 def __init__(self, l, latex_options={}):
 CombinatorialObject.__init__(self, l)
 self.maps = DW_Maps_class( self )  this is the magic line here
 self._latex_options = dict(latex_options)
 if tikz_scale not in self._latex_options:
 self._latex_options[tikz_scale] = 1
 if diagonal not in self._latex_options:
 self._latex_options[diagonal] = False
 if line width not in self._latex_options:
 self._latex_options[line width] = 
 2*self._latex_options[tikz_scale]
 if color not in self._latex_options:
 self._latex_options[color] = black
 if bounce path not in self._latex_options:
 self._latex_options[bounce path] = False
 if peaks not in self._latex_options:
 self._latex_options[peaks] = False
 if valleys not in self._latex_options:
 self._latex_options[valleys] = False

 Now when you compile this you get the following:

 sage: D = DyckWord([1,0])
 sage: D.maps.tab
 D.maps.map1  D.maps.map2  
 sage: D.maps._parent == D
 True

 -Mike

 On Friday, 22 June 2012 09:38:25 UTC-4, Anne Schilling wrote:

 Hi Christian, 

  I already asked this, but no one seemed to have an opinion on that... 
  
  I have now implemented 5 or 6 bijections between Dyck paths and 
  subsets of permutations (pattern-avoiding or noncrossing). I think 
  that it is not practical to have a name for each of them since they 1. 
  do not necessarily have names in the literature and 2. the list of 
  methods for Dyck paths (and actually many other objects) becomes more 
  and more confusing in tab completion which I find not very user 
  friendly. 
  
  I currently have 
  
  DyckWord.to_permutation(bijection=None) 
  
  and then the optional argument bijection is used to differ between the 
  bijections. But another solution would actually be to have 
  
  sage: d = DyckWord([]) 
  sage: d.to_permutation.tab 
  
  yields a list of all possible maps 
  
  and even more 
  
  sage: d.statistics.tab 
  
  yields a list of all combinatorial statistics (Anne actually requested 
  such a use case some time ago). Using this behavior would make the 
  statistics not appear directly when typing 
  
  sage: d.tab 
  
  Only statistics would appear here. The same maybe for maps, then we 
  would not have 
  
  sage: d.to_permutation.tab 
  
  but 
  
  sage: d.maps.tab 
  
  would give a list of maps and 
  
  sage: d.maps.to_permutation.tab 
  
  then the list of maps to permutations. This way, we would have a 
  better organization of the combinatorial maps and statistics (which 
  would be very helpful, I guess, if we keep implementing more and more 
  of these), and the tab completion becomes arranged in a user readable 
  way. 
  
  a. what do you think about such a design? 

 I think such a design is a good idea. I am not completely sure whether 

 d.maps.to_permutation.tab 

 is really needed. Perhaps 

 d.to_permutation.tab 

 is enough. 

  b. it seems to be not standard in object-oriented programming. what 
  are the down-sides? 
  
  c. i would have no idea how to reach such an implementation. 

 I think a similar implementation was recently done for symmetric 
 functions, by doing 

 sage: Sym = SymmetricFunctions(QQ['q','t']) 
 sage: Mac = Sym.macdonald() 
 sage: Ht = Mac.Ht() 

 so you can probably look in /combinat/sf/ (with the new symmetric 
 function patch applied) 
 to see how it is done. 

 Best, 

 Anne 




-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg

[sage-combinat-devel] Re: namings for eulerian and mahonian statistics

2012-06-23 Thread Mike Zabrocki


 here is a disadvantage of this solution: 

 sage: d = DyckWord([]) 
 sage: d.maps._parent.maps._parent.maps._parent.maps.map1() 
 [] 

Its not a bug, its a feature.  :)


 Other thoughts? 

One thing comes to mind that the documentation for .maps or .statistics 
should make clear that this is there for organizing the name space for tab 
completion.  

I wonder if it should use a novel naming convention like 'maps_.tab' 
instead of just 'maps.tab'  That way it is clear that the name space goes 
deeper.  It seems like a good idea to use some sort of different naming 
convention.

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/HlL36FCO29sJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Re: namings for eulerian and mahonian statistics

2012-06-23 Thread Mike Zabrocki


 Making maps() into an attribute like Mike suggested sounds good to me. 
 I am not so sure about maps_. Isn't it enough if maps?? would give a list 
 of 
 maps and their use cases?

My problem here is that on my computer maps? or maps?? is slow, while 
maps.tab is fast.  I don't know if others have this problem (maybe thats 
what happens if you drop your computer and spill wine on it :)

The other disadvantage is that (short of a copy/paste) you still have to 
type out the full name accessing the function rather than the first few 
characters + keystroke.

I know that the 'name_.' is not standard, but it will require new notation 
to organize the namespace and I was thinking of examples like:
D.statistics_.area() 
or 
D.maps_.to_non_crossing_partition()
and then deeper:
D.maps_.to_permutation_.321avoiding()

and it seems like a good way to access these functions.

-Mike
 

  

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/qyfqFOYLPbcJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



[sage-combinat-devel] Re: namings for eulerian and mahonian statistics

2012-06-23 Thread Mike Zabrocki


 I don't (yet) see an advantage of using name_. rather than name. . 
 I have the feeling that a user seeing .statistics in tab completion 
 understands that this is not unique and that he will get more when 
 hitting .statistics.tab . So using 


If I didn't know better, I would assume that D.statistics() would return 
something (although I would have to query D.statistics? to find out).  This 
is why I was hesitant to suggest that you follow through by caching 
functions in another level.  Somehow this idea has grown on me.

I was thinking that in other cases, it might be helpful to have a visual 
cue in the name to indicate that there is more further down in the name 
space. 
e.g. why would one know that .to_permutation has another level 
.to_permutation.321avoiding() ?
Maybe D.to_permutations.tab  ?

I just thought that 'name_.' is a way of indicating that there is more to 
the name space than meets the eye.

I think in any case, you would find out that there is another level to the 
functions because of the doc string.  This is not bad.  I just don't like 
accessing the function name through the doc string.

-Mike

On Saturday, 23 June 2012 11:25:27 UTC-4, Christian Stump wrote:

  My problem here is that on my computer maps? or maps?? is slow, while 
  maps.tab is fast.  I don't know if others have this problem (maybe 
 thats 
  what happens if you drop your computer and spill wine on it :) 
  
  The other disadvantage is that (short of a copy/paste) you still have to 
  type out the full name accessing the function rather than the first few 
  characters + keystroke. 

 same here. 

  I know that the 'name_.' is not standard, but it will require new 
 notation 
  to organize the namespace and I was thinking of examples like: 

 I don't (yet) see an advantage of using name_. rather than name. . 
 I have the feeling that a user seeing .statistics in tab completion 
 understands that this is not unique and that he will get more when 
 hitting .statistics.tab . So using 

 statistics? would give the doc string containing an explanation of the 
 concept of combinatorial maps together with some example, and hitting 

 statistics.area? would give the description of this particular statistic. 


-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/RL--ZjTAXSkJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



Re: [sage-combinat-devel] Re: namings for eulerian and mahonian statistics

2012-06-23 Thread Mike Zabrocki
Hi,

I just thought of somethingboth possibilities are possible!
In the DW_Maps_class add the method
def __call__( self ):
return self

Then you have the behavior:
sage: D = DyckWord([1,0])
sage: m = D.maps()
sage: m.tab
m.map1  m.map2  
sage: D.maps.tab
D.maps.map1  D.maps.map2  

-Mike

-- 
You received this message because you are subscribed to the Google Groups 
sage-combinat-devel group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/sage-combinat-devel/-/gBPn8wmenmgJ.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-combinat-devel+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sage-combinat-devel?hl=en.



  1   2   >