reduce-algebra-developers — Discussion of development, administration and support for Reduce

You can subscribe to this list here.

 2009 2010 2011 2012 2013 2014 Jan (2) Feb (5) Mar Apr May (2) Jun (8) Jul (4) Aug Sep Oct (2) Nov (6) Dec Jan (1) Feb (1) Mar (3) Apr (2) May (2) Jun (2) Jul (18) Aug (13) Sep (7) Oct Nov Dec (2) Jan Feb (11) Mar Apr (4) May Jun (1) Jul (18) Aug (16) Sep (12) Oct (12) Nov (19) Dec (42) Jan (16) Feb (3) Mar (8) Apr (14) May (30) Jun (5) Jul (7) Aug (3) Sep (10) Oct (4) Nov (10) Dec (1) Jan (14) Feb (8) Mar (5) Apr (3) May (9) Jun (19) Jul Aug (27) Sep (5) Oct (18) Nov (12) Dec (8) Jan (5) Feb (8) Mar (20) Apr (22) May (28) Jun (9) Jul (6) Aug (46) Sep (30) Oct Nov Dec

Showing results of 628

1 2 3 .. 26 > >> (Page 1 of 26)
 [Reduce-algebra-developers] Different results for sub in different contexts. From: abpetrov - 2014-09-19 18:34:09 Attachments: Message as HTML Hi, I tried to use sub in two different contexts and got different results. First: off lower; operator b, c, p2, Delta$rule_delta_simplify := { Delta( tmp_ind - ~~i )*~~A =>sub( tmp_ind = i, A )}; p := Delta(tmp_ind-x)*c(tmp_ind)*b(k); p2 := (p where rule_delta_simplify); got result p2 := b(k)*c(tmp_ind) but otherwise off lower; operator b, c, p2, Delta$ p := Delta(tmp_ind-x)*c(tmp_ind)*b(k); p2 := sub( tmp_ind = i, p ) ; gives us p2 := Delta(i - x)*b(k)*c(i) How can I avoid this difference and get result for operator c in first case as in the second result? Best regards, Petrov Alexander. 
 Re: [Reduce-algebra-developers] solve/groesolve redundancy From: Jarmo Hietarinta - 2014-09-19 16:05:56 Thank you Rainer for your work on the binaries, the solve/groesolve problem, and the incremental groebner code. This is much appreciated! My problem is that I just use reduce in the algebraic mode and have little knowledge of the internals of reduce or the groebner modules. > Basically, the logic for excluding redundant solutions is not good enough. (Not > excluding redundant solutions is easy, of course.) The various cases and > subcases encountered during the solution process are organized as a linear list, > but for the redundancy check the cases must be organized as a tree of cases > and subcases, so that redundancy checks are done only between solutions in > different branches of the tree. Indeed, the key problem seems to be in obtaining a robust (and fast) subcase analysis for groesolve, and for the incremental approach as well. > The information is available in procedure groesolveeval, so it should be possible. OK, this would be nice to have in the algebraic mode as well. The reason for keeping the branching information with the solution is in that the story does not end with solving the equations. After this one continues the analysis of the original problem, maybe solving PDEs etc. Then one may have to divide a particular case again into further subcases, but some of these may already be analysed (this requires the branching to be ordered). So when the branching information is carried along with the solution one can always check whether or not the conditions (e.g., for nonzero quantities) for the case at hand are satisfied. I am now quite optimistic that these improvements can be made. And the result might be of interest for a wider audience. regards, Jarmo 
 Re: [Reduce-algebra-developers] new binaries? From: Rainer Schöpf - 2014-09-19 05:10:04 On Wed, 20 Aug 2014 at 13:54 -0000, Jarmo Hietarinta wrote: > The binaries at http://sourceforge.net/projects/reduce-algebra/files/ are mostly from 2011-04-14. > That is more than 3 years ago. Since many bug fixes have been made in the meantime, > it would be nice to get a fresh one (I would need an ubuntu-version). You're absolutely right. I will take care of it. (Building Ubuntu binaries is relatively easy; the Windows build is only 98% ready, and we don't have a build process for MacOS X in place.) Regards, Rainer 
 Re: [Reduce-algebra-developers] incremental groebnerf basis computation From: Rainer Schöpf - 2014-09-18 21:00:34 On Thu, 18 Sep 2014 at 18:17 -0000, Jarmo Hietarinta wrote: > Thanks Arthur! > > To continue, I would divide the problem into 3 parts (procedures), each of which can be solved separately. > In each case the tricky problem is to handle long list effectively. It seems that in symbolic mode lists are often copied (which uses a lot of memory) when it would be best to modify them in situ. > > 1. Computing a new list from old list + new equation. Maybe something like > > procedure (neweq,gb); > for each g1 in gb collect (or join?) groebnerf(append(gp,{neweq}); Is there a reason why you need to append the new equation instead of adding it at the front (which is much more efficient)? > One problem here is that if the result is {{1}} then it should not be included. > The groebner experts can probably write such a procedure quickly. Maybe something like procedure check_new_eq(neweq,gb); begin scalar newgbs; for each g1 in gb do << newgb := groebnerf(neweq . g1); if newgb neq '((list 1)) then newgbs := newgb . newgbs >>; return newgbs; end; > 2. Comparator of groebner bases > > procedure gbcompare(g1,g2); > if g1=g2 then return 0 > else if g1 is a subcase of g2 then return 1- > else if g2 is a subcase of g1 then return 1 > else retun 99 (they are independent). The procedure groesolvidsubset!?(b1,b2,vars) in groebner/groesolv.red checks whether b2 is a subcase of b1. > Again a problem for the groebner experts. > Actually such a procedure might be interesting for a larger audiance. > > 3. A sorting algorithm. > > The comparator procedure above provides a partial order to the list of groebner bases. > The list will contain short chains (many of length 1) and we should collect the maximal element of each chain. > But how to do this effectively? For example, if in the comparison process it > is found that A is a subcase of B then there is no longer need to compare A > to anything. > Making such a sorting algorithm is completely outside my expertise. > Apparently there are specialists for these kinds of problems, but I do not > know if this particular version has been studied or written for reduce. I would add a check to the above procedure, eg. procedure check_new_eq(neweq,gb); begin scalar newgbs; for each g1 in gb do << newgb := groebnerf(neweq . g1); if newgb neq '((list 1)) then << % check newgb against all already known bases for each g2 in newgbs do % but only if it is not nil if newgb then << if groesolvidsubset!?(g2,newgb,vars) then % newgb is equal to or subcase of g2, so drop newgb newgb := nil else if groesolvidsubset!?(newgb,g2,vars) then % g2 is subcase of newgb, so drop g2 newgbs := delete(g2,newgbs) >>; % if newgb is not nil (ie. not dropped), add it if newgb then newgbs := newgb . newgbs >> >>; return newgbs; Regards, Rainer 
 Re: [Reduce-algebra-developers] solve/groesolve redundancy From: Rainer Schöpf - 2014-09-18 20:25:34 On Wed, 10 Sep 2014 at 13:01 -0000, Jarmo Hietarinta wrote: > The following results from solve and groesolve are not optimal as they contain redundant entries: Indeed they are not. I'm currently working on the solve/groesolve interface, after Winfried Neun told me that you had found a problem where solve misses a case. I believe I do now understand why it goes wrong, but I've not yet arrived at a solution. Basically, the logic for excluding redundant solutions is not good enough. (Not excluding redundant solutions is easy, of course.) The various cases and subcases encountered during the solution process are organized as a linear list, but for the redundancy check the cases must be organized as a tree of cases and subcases, so that redundancy checks are done only between solutions in different branches of the tree. For example, looking at your problem: > 3: a*(r*s+a*b); > > a*(a*b + r*s)$> > 4: solve ws; > > Unknowns: {a,b,r,s} > {{a=arbcomplex(8), > b=( - r*s)/a, > r=arbcomplex(9), > s=arbcomplex(10)}, > {a=0,b=arbcomplex(6),r=0,s=arbcomplex(7)}, > {a=0,b=arbcomplex(4),r=arbcomplex(5),s=0}, > {a=0, > b=arbcomplex(1), > r=arbcomplex(2), > s=arbcomplex(3)}}$ > > ----------------- the last case has a=0, so the two cases before it are subcases and should not be included. The original problem is partitioned into the two branch problems which are handled one after the other. (1) a=0 (which leads to the last solution) and (2) a*b + r*s = 0 Solving this w.r.t. variable b, one obtains (2a) b = -r*s/a which is valid for nonzero a. To account for the case a=0, the denominator (a) is added to the original polynomial, and the list{a*b+r*s,a} is added as a new problem (2b) to the end of the list of problems. Obviously, this is a special case of (1), but the two branches are never checked against each other. This one of the errors in the decision logic, another one is that the redundancy check doesn't account for a subcases of subcases or even higher depth of the tree. E.g., if case 2b has subcases (2b-1) and (2b-2), they must not be compared against (2b) or (2), but to (1). With the current code, (2b-1) and (2b-2) are compared only against (2) and consequently removed. I hope my ramblings are not too confusing. Now that I've written things down, I've got an idea how to correct the errors. > [...] > (In fact, it would be nice to have the results in the form where also assumptions of nonzero entries are listed, > as in {{{a=0},{}},{{b=-r*s/a},{a}}}, but perhaps that is too complicated to do.) The information is available in procedure groesolveeval, so it should be possible. Regards, Rainer 
 Re: [Reduce-algebra-developers] incremental groebnerf basis computation From: Jarmo Hietarinta - 2014-09-18 18:17:19 Thanks Arthur! To continue, I would divide the problem into 3 parts (procedures), each of which can be solved separately. In each case the tricky problem is to handle long list effectively. It seems that in symbolic mode lists are often copied (which uses a lot of memory) when it would be best to modify them in situ. 1. Computing a new list from old list + new equation. Maybe something like procedure (neweq,gb); for each g1 in gb collect (or join?) groebnerf(append(gp,{neweq}); One problem here is that if the result is {{1}} then it should not be included. The groebner experts can probably write such a procedure quickly. 2. Comparator of groebner bases procedure gbcompare(g1,g2); if g1=g2 then return 0 else if g1 is a subcase of g2 then return 1- else if g2 is a subcase of g1 then return 1 else retun 99 (they are independent). Again a problem for the groebner experts. Actually such a procedure might be interesting for a larger audiance. 3. A sorting algorithm. The comparator procedure above provides a partial order to the list of groebner bases. The list will contain short chains (many of length 1) and we should collect the maximal element of each chain. But how to do this effectively? For example, if in the comparison process it is found that A is a subcase of B then there is no longer need to compare A to anything. Making such a sorting algorithm is completely outside my expertise. Apparently there are specialists for these kinds of problems, but I do not know if this particular version has been studied or written for reduce. regards, Jarmo 
 Re: [Reduce-algebra-developers] incremental groebnerf basis computation From: Arthur Norman - 2014-09-18 11:54:48 That sounds interesting! So one thing I will wonder (since you are the person who REALLY knows what the tricks and wrinkles are liable to be and who has the examples and motivation) is whether there is any chance of you making a start on the code - I have little idea of exactly what your experience towards that is is... but the pseudocode you provide suggests you might be able to! I am about to go on a trip and then have Term to cope with withj piles of students - and also I am not a Groebner expert so I can not pick up the main job. We can see if somebody else volunteers. BUt if you got started then joining in on the sidelines to cheer and help might well be possible! Arthur On Thu, 18 Sep 2014, Jarmo Hietarinta wrote: > Several research problem I have looked recently lead to a very large set of equations for a relatively small number of variables. (For example 100-250 equations for 6 variables) If I give the whole set to "groebnerf" it is too much, and after some time it dies due to "no space at all" or runs for many days. Yet I know the set of equations has many relatively simple equations that factorize. > > In order to study such cases it would be nice to have "incremental groebner basis computation", in which one feeds new equations one by one, starting with the simplest ones. > > A pseudocode could be as follows: > > glo -- list of groebnerf bases > gln:={} -- the new list > egnn:= new equation to be added > > for all gl1 in glo do > apu:=groebnerf(append(gl1,{eqnn})) > if apu={{1}} do nothing else gln:=append(gln,apu) > > This is simple, and can be easily done in more elegant way. > > The difficult problem is in analysing the list of bases gln, because it can contain subcases. > So in principle one should check for every pair in gln whether one is subcase of another, for example by using preduce, and then discarding the subcases, and in the case of several identical cases, keeping only one. > This I do not know how to do effectively. > > I believe the incremental approach provides enormous improvement in some cases, reducing both the computational time and the "intermediate expression swell". > > If somebody is interested in developing such an approach I can provide real-life examples on which to evaluate the effectiveness. > > regards, Jarmo Hietarinta > > ---------------------------------------------------------------------------------- > Jarmo Hietarinta, Prof. emer. > Department of Physics and Astronomy > University of Turku, FIN-20014 Turku, Finland > mobile: +358-40-722 5685 > ---------------------------------------------------------------------------------- > > ------------------------------------------------------------------------------ > Want excitement? > Manually upgrade your production database. > When you want reliability, choose Perforce > Perforce version control. Predictably reliable. > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk > _______________________________________________ > Reduce-algebra-developers mailing list > Reduce-algebra-developers@... > https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers > 
 [Reduce-algebra-developers] incremental groebnerf basis computation From: Jarmo Hietarinta - 2014-09-18 11:09:56 Several research problem I have looked recently lead to a very large set of equations for a relatively small number of variables. (For example 100-250 equations for 6 variables) If I give the whole set to "groebnerf" it is too much, and after some time it dies due to "no space at all" or runs for many days. Yet I know the set of equations has many relatively simple equations that factorize. In order to study such cases it would be nice to have "incremental groebner basis computation", in which one feeds new equations one by one, starting with the simplest ones. A pseudocode could be as follows: glo -- list of groebnerf bases gln:={} -- the new list egnn:= new equation to be added for all gl1 in glo do apu:=groebnerf(append(gl1,{eqnn})) if apu={{1}} do nothing else gln:=append(gln,apu) This is simple, and can be easily done in more elegant way. The difficult problem is in analysing the list of bases gln, because it can contain subcases. So in principle one should check for every pair in gln whether one is subcase of another, for example by using preduce, and then discarding the subcases, and in the case of several identical cases, keeping only one. This I do not know how to do effectively. I believe the incremental approach provides enormous improvement in some cases, reducing both the computational time and the "intermediate expression swell". If somebody is interested in developing such an approach I can provide real-life examples on which to evaluate the effectiveness. regards, Jarmo Hietarinta ---------------------------------------------------------------------------------- Jarmo Hietarinta, Prof. emer. Department of Physics and Astronomy University of Turku, FIN-20014 Turku, Finland mobile: +358-40-722 5685 ---------------------------------------------------------------------------------- 
 [Reduce-algebra-developers] Cygwin supported reduce building. From: René Grognard - 2014-09-16 08:19:56 Attachments: Message as HTML     328.png
 Re: [Reduce-algebra-developers] State of Mac OS builds From: mark brethen - 2014-09-14 22:18:51 Hi Arthur, I'm working off of a build script I wrote a couple years ago for 10.6. At the time I wasn't using multiple CPUs or multiple cores in parallel during build. I fixed that and have built a text-only system. Below is a print out of the cslbuild directory. What do I need to keep? brethen-mbp:trunk marbre$ls -alR cslbuild total 0 drwxr-xr-x 4 macports admin 136 Sep 14 16:07 . drwxr-xr-x 45 macports admin 1530 Sep 14 16:07 .. drwxr-xr-x 126 macports admin 4284 Sep 14 16:07 generated-c drwxr-xr-x 7 macports admin 238 Sep 14 16:07 x86_64-mac_10.9_mavericks-darwin13.3.0-nogui cslbuild/generated-c: total 69080 drwxr-xr-x 126 macports admin 4284 Sep 14 16:07 . drwxr-xr-x 4 macports admin 136 Sep 14 16:07 .. -rw-r--r-- 1 macports admin 12838920 Sep 14 16:07 bootstrapreduce.img -rw-r--r-- 1 macports admin 167016 Sep 14 16:07 csl.img -rw-r--r-- 1 macports admin 1282925 Sep 14 16:07 profile.dat -rw-r--r-- 1 macports admin 5009356 Sep 14 16:07 reduce.img -rw-r--r-- 1 macports admin 292964 Sep 14 16:07 u01.c -rw-r--r-- 1 macports admin 8641 Sep 14 16:07 u01.lsp -rw-r--r-- 1 macports admin 275005 Sep 14 16:07 u02.c -rw-r--r-- 1 macports admin 6820 Sep 14 16:07 u02.lsp -rw-r--r-- 1 macports admin 265532 Sep 14 16:07 u03.c -rw-r--r-- 1 macports admin 6289 Sep 14 16:07 u03.lsp -rw-r--r-- 1 macports admin 270527 Sep 14 16:07 u04.c -rw-r--r-- 1 macports admin 5582 Sep 14 16:07 u04.lsp -rw-r--r-- 1 macports admin 266627 Sep 14 16:07 u05.c -rw-r--r-- 1 macports admin 5490 Sep 14 16:07 u05.lsp -rw-r--r-- 1 macports admin 284337 Sep 14 16:07 u06.c -rw-r--r-- 1 macports admin 6840 Sep 14 16:07 u06.lsp -rw-r--r-- 1 macports admin 281272 Sep 14 16:07 u07.c -rw-r--r-- 1 macports admin 6727 Sep 14 16:07 u07.lsp -rw-r--r-- 1 macports admin 287569 Sep 14 16:07 u08.c -rw-r--r-- 1 macports admin 6710 Sep 14 16:07 u08.lsp -rw-r--r-- 1 macports admin 267595 Sep 14 16:07 u09.c -rw-r--r-- 1 macports admin 5176 Sep 14 16:07 u09.lsp -rw-r--r-- 1 macports admin 267787 Sep 14 16:07 u10.c -rw-r--r-- 1 macports admin 6027 Sep 14 16:07 u10.lsp -rw-r--r-- 1 macports admin 229382 Sep 14 16:07 u11.c -rw-r--r-- 1 macports admin 3605 Sep 14 16:07 u11.lsp -rw-r--r-- 1 macports admin 253698 Sep 14 16:07 u12.c -rw-r--r-- 1 macports admin 4919 Sep 14 16:07 u12.lsp -rw-r--r-- 1 macports admin 261087 Sep 14 16:07 u13.c -rw-r--r-- 1 macports admin 5865 Sep 14 16:07 u13.lsp -rw-r--r-- 1 macports admin 263999 Sep 14 16:07 u14.c -rw-r--r-- 1 macports admin 5703 Sep 14 16:07 u14.lsp -rw-r--r-- 1 macports admin 259158 Sep 14 16:07 u15.c -rw-r--r-- 1 macports admin 4874 Sep 14 16:07 u15.lsp -rw-r--r-- 1 macports admin 269868 Sep 14 16:07 u16.c -rw-r--r-- 1 macports admin 4980 Sep 14 16:07 u16.lsp -rw-r--r-- 1 macports admin 262927 Sep 14 16:07 u17.c -rw-r--r-- 1 macports admin 5533 Sep 14 16:07 u17.lsp -rw-r--r-- 1 macports admin 268657 Sep 14 16:07 u18.c -rw-r--r-- 1 macports admin 5968 Sep 14 16:07 u18.lsp -rw-r--r-- 1 macports admin 263162 Sep 14 16:07 u19.c -rw-r--r-- 1 macports admin 5979 Sep 14 16:07 u19.lsp -rw-r--r-- 1 macports admin 249436 Sep 14 16:07 u20.c -rw-r--r-- 1 macports admin 4277 Sep 14 16:07 u20.lsp -rw-r--r-- 1 macports admin 258777 Sep 14 16:07 u21.c -rw-r--r-- 1 macports admin 5726 Sep 14 16:07 u21.lsp -rw-r--r-- 1 macports admin 243085 Sep 14 16:07 u22.c -rw-r--r-- 1 macports admin 4214 Sep 14 16:07 u22.lsp -rw-r--r-- 1 macports admin 256994 Sep 14 16:07 u23.c -rw-r--r-- 1 macports admin 4844 Sep 14 16:07 u23.lsp -rw-r--r-- 1 macports admin 265195 Sep 14 16:07 u24.c -rw-r--r-- 1 macports admin 5863 Sep 14 16:07 u24.lsp -rw-r--r-- 1 macports admin 266741 Sep 14 16:07 u25.c -rw-r--r-- 1 macports admin 6052 Sep 14 16:07 u25.lsp -rw-r--r-- 1 macports admin 268146 Sep 14 16:07 u26.c -rw-r--r-- 1 macports admin 6203 Sep 14 16:07 u26.lsp -rw-r--r-- 1 macports admin 241019 Sep 14 16:07 u27.c -rw-r--r-- 1 macports admin 4099 Sep 14 16:07 u27.lsp -rw-r--r-- 1 macports admin 260609 Sep 14 16:07 u28.c -rw-r--r-- 1 macports admin 6199 Sep 14 16:07 u28.lsp -rw-r--r-- 1 macports admin 260801 Sep 14 16:07 u29.c -rw-r--r-- 1 macports admin 5766 Sep 14 16:07 u29.lsp -rw-r--r-- 1 macports admin 260716 Sep 14 16:07 u30.c -rw-r--r-- 1 macports admin 5971 Sep 14 16:07 u30.lsp -rw-r--r-- 1 macports admin 274402 Sep 14 16:07 u31.c -rw-r--r-- 1 macports admin 7848 Sep 14 16:07 u31.lsp -rw-r--r-- 1 macports admin 263049 Sep 14 16:07 u32.c -rw-r--r-- 1 macports admin 5006 Sep 14 16:07 u32.lsp -rw-r--r-- 1 macports admin 274686 Sep 14 16:07 u33.c -rw-r--r-- 1 macports admin 6458 Sep 14 16:07 u33.lsp -rw-r--r-- 1 macports admin 271857 Sep 14 16:07 u34.c -rw-r--r-- 1 macports admin 5912 Sep 14 16:07 u34.lsp -rw-r--r-- 1 macports admin 225256 Sep 14 16:07 u35.c -rw-r--r-- 1 macports admin 4543 Sep 14 16:07 u35.lsp -rw-r--r-- 1 macports admin 246002 Sep 14 16:07 u36.c -rw-r--r-- 1 macports admin 4271 Sep 14 16:07 u36.lsp -rw-r--r-- 1 macports admin 261790 Sep 14 16:07 u37.c -rw-r--r-- 1 macports admin 6138 Sep 14 16:07 u37.lsp -rw-r--r-- 1 macports admin 269463 Sep 14 16:07 u38.c -rw-r--r-- 1 macports admin 6091 Sep 14 16:07 u38.lsp -rw-r--r-- 1 macports admin 258187 Sep 14 16:07 u39.c -rw-r--r-- 1 macports admin 5075 Sep 14 16:07 u39.lsp -rw-r--r-- 1 macports admin 239575 Sep 14 16:07 u40.c -rw-r--r-- 1 macports admin 3951 Sep 14 16:07 u40.lsp -rw-r--r-- 1 macports admin 263757 Sep 14 16:07 u41.c -rw-r--r-- 1 macports admin 5640 Sep 14 16:07 u41.lsp -rw-r--r-- 1 macports admin 259904 Sep 14 16:07 u42.c -rw-r--r-- 1 macports admin 5517 Sep 14 16:07 u42.lsp -rw-r--r-- 1 macports admin 247166 Sep 14 16:07 u43.c -rw-r--r-- 1 macports admin 5072 Sep 14 16:07 u43.lsp -rw-r--r-- 1 macports admin 255371 Sep 14 16:07 u44.c -rw-r--r-- 1 macports admin 5689 Sep 14 16:07 u44.lsp -rw-r--r-- 1 macports admin 246226 Sep 14 16:07 u45.c -rw-r--r-- 1 macports admin 4659 Sep 14 16:07 u45.lsp -rw-r--r-- 1 macports admin 243513 Sep 14 16:07 u46.c -rw-r--r-- 1 macports admin 4568 Sep 14 16:07 u46.lsp -rw-r--r-- 1 macports admin 248313 Sep 14 16:07 u47.c -rw-r--r-- 1 macports admin 4911 Sep 14 16:07 u47.lsp -rw-r--r-- 1 macports admin 236501 Sep 14 16:07 u48.c -rw-r--r-- 1 macports admin 3920 Sep 14 16:07 u48.lsp -rw-r--r-- 1 macports admin 261518 Sep 14 16:07 u49.c -rw-r--r-- 1 macports admin 5103 Sep 14 16:07 u49.lsp -rw-r--r-- 1 macports admin 249341 Sep 14 16:07 u50.c -rw-r--r-- 1 macports admin 6295 Sep 14 16:07 u50.lsp -rw-r--r-- 1 macports admin 242192 Sep 14 16:07 u51.c -rw-r--r-- 1 macports admin 4721 Sep 14 16:07 u51.lsp -rw-r--r-- 1 macports admin 249972 Sep 14 16:07 u52.c -rw-r--r-- 1 macports admin 3700 Sep 14 16:07 u52.lsp -rw-r--r-- 1 macports admin 250377 Sep 14 16:07 u53.c -rw-r--r-- 1 macports admin 4525 Sep 14 16:07 u53.lsp -rw-r--r-- 1 macports admin 249178 Sep 14 16:07 u54.c -rw-r--r-- 1 macports admin 4757 Sep 14 16:07 u54.lsp -rw-r--r-- 1 macports admin 238605 Sep 14 16:07 u55.c -rw-r--r-- 1 macports admin 2760 Sep 14 16:07 u55.lsp -rw-r--r-- 1 macports admin 231862 Sep 14 16:07 u56.c -rw-r--r-- 1 macports admin 3575 Sep 14 16:07 u56.lsp -rw-r--r-- 1 macports admin 252888 Sep 14 16:07 u57.c -rw-r--r-- 1 macports admin 4778 Sep 14 16:07 u57.lsp -rw-r--r-- 1 macports admin 261311 Sep 14 16:07 u58.c -rw-r--r-- 1 macports admin 5471 Sep 14 16:07 u58.lsp -rw-r--r-- 1 macports admin 226329 Sep 14 16:07 u59.c -rw-r--r-- 1 macports admin 3624 Sep 14 16:07 u59.lsp -rw-r--r-- 1 macports admin 249473 Sep 14 16:07 u60.c -rw-r--r-- 1 macports admin 4766 Sep 14 16:07 u60.lsp cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui: total 128 drwxr-xr-x 7 macports admin 238 Sep 14 16:07 . drwxr-xr-x 4 macports admin 136 Sep 14 16:07 .. -rw-r--r-- 1 macports admin 22103 Sep 14 16:07 Makefile -rw-r--r-- 1 macports admin 10025 Sep 14 16:07 config.log -rwxr-xr-x 1 macports admin 27337 Sep 14 16:07 config.status drwxr-xr-x 10 macports admin 340 Sep 14 16:07 crlibm drwxr-xr-x 3 macports admin 102 Sep 14 16:07 csl cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui/crlibm: total 248 drwxr-xr-x 10 macports admin 340 Sep 14 16:07 . drwxr-xr-x 7 macports admin 238 Sep 14 16:07 .. drwxr-xr-x 22 macports admin 748 Sep 14 16:07 .deps -rw-r--r-- 1 macports admin 41071 Sep 14 16:07 Makefile -rw-r--r-- 1 macports admin 25680 Sep 14 16:07 config.log -rwxr-xr-x 1 macports admin 36867 Sep 14 16:07 config.status -rw-r--r-- 1 macports admin 4480 Sep 14 16:07 crlibm_config.h drwxr-xr-x 4 macports admin 136 Sep 14 16:07 scs_lib -rw-r--r-- 1 macports admin 30 Sep 14 16:07 stamp-h1 drwxr-xr-x 4 macports admin 136 Sep 14 16:07 tests cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui/crlibm/.deps: total 160 drwxr-xr-x 22 macports admin 748 Sep 14 16:07 . drwxr-xr-x 10 macports admin 340 Sep 14 16:07 .. -rw-r--r-- 1 macports admin 8 Sep 14 16:07 asincos.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 atan_accurate.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 atan_fast.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 crlibm_private.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 csh_fast.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 exp-td-standalone.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 exp-td.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 expm1-standalone.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 expm1.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 log-de.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 log.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 log10-td.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 log1p.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 log2-td.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 pow.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 rem_pio2_accurate.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 trigo_accurate.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 trigo_fast.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 trigpi.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 triple-double.Po cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui/crlibm/scs_lib: total 48 drwxr-xr-x 4 macports admin 136 Sep 14 16:07 . drwxr-xr-x 10 macports admin 340 Sep 14 16:07 .. drwxr-xr-x 11 macports admin 374 Sep 14 16:07 .deps -rw-r--r-- 1 macports admin 23586 Sep 14 16:07 Makefile cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui/crlibm/scs_lib/.deps: total 72 drwxr-xr-x 11 macports admin 374 Sep 14 16:07 . drwxr-xr-x 4 macports admin 136 Sep 14 16:07 .. -rw-r--r-- 1 macports admin 8 Sep 14 16:07 addition_scs.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 division_scs.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 double2scs.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 multiplication_scs.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 print_scs.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 scs2double.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 scs2mpfr.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 scs_private.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 zero_scs.Po cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui/crlibm/tests: total 96 drwxr-xr-x 4 macports admin 136 Sep 14 16:07 . drwxr-xr-x 10 macports admin 340 Sep 14 16:07 .. drwxr-xr-x 10 macports admin 340 Sep 14 16:07 .deps -rw-r--r-- 1 macports admin 48150 Sep 14 16:07 Makefile cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui/crlibm/tests/.deps: total 64 drwxr-xr-x 10 macports admin 340 Sep 14 16:07 . drwxr-xr-x 4 macports admin 136 Sep 14 16:07 .. -rw-r--r-- 1 macports admin 8 Sep 14 16:07 blind_test.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 generate_test_vectors.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 soak_test-interval.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 soak_test.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 test_common.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 test_perf-interval.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 test_perf.Po -rw-r--r-- 1 macports admin 8 Sep 14 16:07 test_val.Po cslbuild/x86_64-mac_10.9_mavericks-darwin13.3.0-nogui/csl: total 56 drwxr-xr-x 3 macports admin 102 Sep 14 16:07 . drwxr-xr-x 7 macports admin 238 Sep 14 16:07 .. -rw-r--r-- 1 macports admin 27070 Sep 14 16:07 config.log On Sep 14, 2014, at 3:07 PM, Arthur Norman wrote: > On Sun, 14 Sep 2014, Mark Brethen wrote: >> " >> Content-Transfer-Encoding: quoted-printable >> Mime-Version: 1.0 (1.0) >> >> What is the state of Mac OS builds on Mavericks (10.9)? I was > unsuccessful building csl (fox, wx, no GUI) yesterday. Is the install > documentation current? >> > > I can and do build the CSL version on Mavericks but to get there I had to > ensure I had a whole bunch of development packages loaded using macports. > Here is the list of ports I have (in addition to the Mavericks version of > Xcode and its command line tools). Many many be ones I installed for > non-Reduce reasons. If things hurt then you need to send me a detailed > explaination of what failed not just a global "it did not work" message... > So I will watch out for that! > Arthur > > aalib @1.4rc5 graphics/aalib > aspell @0.60.6.1 textproc/aspell > at-spi2-atk @2.12.1 gnome/at-spi2-atk > at-spi2-core @2.12.0 gnome/at-spi2-core > atk @2.12.0 devel/atk > atkmm @2.22.7 gnome/atkmm > autoconf @2.69 devel/autoconf > automake @1.14.1 devel/automake > babl @0.1.10 graphics/babl > bison @2.7.1 devel/bison > boehmgc @7.4.2 devel/boehmgc > bzip2 @1.0.6 archivers/bzip2 > cairo @1.12.16 graphics/cairo > cairomm @1.10.0 graphics/cairomm > cmake @3.0.0 devel/cmake > coreutils @8.23 sysutils/coreutils > curl @7.37.1 net/curl > curl-ca-bundle @7.37.1 net/curl > cyrus-sasl2 @2.1.26 security/cyrus-sasl2 > db46 @4.6.21 databases/db46 > db_select @0.1 sysutils/db_select > dbus @1.8.6 devel/dbus > dbus-glib @0.102 devel/dbus-glib > dbus-python27 @1.2.0 devel/dbus-python > desktop-file-utils @0.22 gnome/desktop-file-utils > docbook-xml @5.0 textproc/docbook-xml > docbook-xml-4.1.2 @5.0 textproc/docbook-xml > docbook-xml-4.2 @5.0 textproc/docbook-xml > docbook-xml-4.3 @5.0 textproc/docbook-xml > docbook-xml-4.4 @5.0 textproc/docbook-xml > docbook-xml-4.5 @5.0 textproc/docbook-xml > docbook-xml-5.0 @5.0 textproc/docbook-xml > docbook-xsl @1.78.1 textproc/docbook-xsl > enca @1.15 textproc/enca > enchant @1.6.0 textproc/enchant > exiv2 @0.24 graphics/exiv2 > expat @2.1.0 textproc/expat > fftw-3 @3.3.4 math/fftw-3 > fftw-3-single @3.3.4 math/fftw-3 > findutils @4.4.2 sysutils/findutils > flac @1.3.0 audio/flac > flex @2.5.37 devel/flex > fontconfig @2.11.1 graphics/fontconfig > fontforge @20120731 graphics/fontforge > fop @1.1 textproc/fop > freetype @2.5.3 print/freetype > fribidi @0.19.6 textproc/fribidi > gawk @4.1.1 lang/gawk > gccmakedep @1.0.2 x11/gccmakedep > gconf @3.2.6 gnome/gconf > gdbm @1.11 databases/gdbm > gdk-pixbuf2 @2.30.8 graphics/gdk-pixbuf2 > geoclue @0.12.99 devel/geoclue > geoclue2 @2.1.9 devel/geoclue2 > geocode-glib @3.12.2 gnome/geocode-glib > getopt @1.1.5 sysutils/getopt > gettext @0.19.2 devel/gettext > ghostscript @9.10 print/ghostscript > giflib @4.2.3 graphics/giflib > glib-networking @2.40.1 gnome/glib-networking > glib2 @2.40.0 devel/glib2 > glibmm @2.40.0 devel/glibmm > gmake @4.0 devel/gmake > gmp @6.0.0 devel/gmp > gnome-common @3.12.0 gnome/gnome-common > gnome-desktop @3.12.2 gnome/gnome-desktop > gnome-doc-utils @0.20.10 gnome/gnome-doc-utils > gnome-getting-started-docs @3.12.1 gnome/gnome-getting-started-docs > gnome-icon-theme @3.12.0 gnome/gnome-icon-theme > gnome-icon-theme-symbolic @3.12.0 gnome/gnome-icon-theme-symbolic > gnome-mime-data @2.18.0 gnome/gnome-mime-data > gnome-settings-daemon @3.12.2 gnome/gnome-settings-daemon > gnome-system-monitor @3.12.2 gnome/gnome-system-monitor > gnome-themes-standard @3.12.0 gnome/gnome-themes-standard > gnome-user-docs @3.12.2 gnome/gnome-user-docs > gnome-vfs @2.24.4 gnome/gnome-vfs > gnutar @1.27.1 archivers/gnutar > gnutls @3.3.7 devel/gnutls > gnutls @3.3.7 devel/gnutls > gobject-introspection @1.40.0 gnome/gobject-introspection > gperf @3.0.4 devel/gperf > gpsd @3.5 net/gpsd > graphite2 @1.2.4 graphics/graphite2 > groff @1.22.2 sysutils/groff > gsed @4.2.2 textproc/gsed > gsettings-desktop-schemas @3.12.2 gnome/gsettings-desktop-schemas > gstreamer1 @1.4.0 gnome/gstreamer1 > gstreamer1-gst-plugins-base @1.4.0 gnome/gstreamer1-gst-plugins-base > gtk-doc @1.20 gnome/gtk-doc > gtk2 @2.24.24 gnome/gtk2 > gtk3 @3.12.2 gnome/gtk3 > gtkmm @2.24.4 x11/gtkmm > gtkmm3 @3.12.0 x11/gtkmm3 > gzip @1.6 archivers/gzip > harfbuzz @0.9.35 graphics/harfbuzz > harfbuzz @0.9.35 graphics/harfbuzz > harfbuzz-icu @0.9.35 graphics/harfbuzz > harfbuzz-icu @0.9.35 graphics/harfbuzz > help2man @1.46.1 textproc/help2man > hicolor-icon-theme @0.13 gnome/hicolor-icon-theme > hunspell @1.3.3 textproc/hunspell > icon-naming-utils @0.8.90 gnome/icon-naming-utils > icu @53.1 devel/icu > icu @53.1 devel/icu > imake @1.0.5 x11/imake > intltool @0.50.2 textproc/intltool > intltool @0.50.2 textproc/intltool > iso-codes @3.43 devel/iso-codes > itstool @2.0.2 textproc/itstool > jasper @1.900.1 graphics/jasper > jbig2dec @0.11 graphics/jbig2dec > jbigkit @2.1 graphics/jbigkit > jpeg @9a graphics/jpeg > json-c @0.12-20140410 textproc/json-c > json-glib @1.0.2 devel/json-glib > kerberos5 @1.11.3 net/kerberos5 > lame @3.99.5 audio/lame > lcms2 @2.6 graphics/lcms2 > libarchive @3.1.2 archivers/libarchive > libart_lgpl @2.3.21 graphics/libart_lgpl > libass @0.10.2 multimedia/libass > libatomic_ops @7.4.0 devel/libatomic_ops > libbluray @0.6.0 multimedia/libbluray > libcanberra @0.30 audio/libcanberra > libcomerr @1.42.9 sysutils/e2fsprogs > libcroco @0.6.8 gnome/libcroco > libedit @20121213-3.0 devel/libedit > libffi @3.1 devel/libffi > libgcrypt @1.6.1 devel/libgcrypt > libgnome-keyring @3.12.0 gnome/libgnome-keyring > libgpg-error @1.13 devel/libgpg-error > libgsf @1.14.30 gnome/libgsf > libgtop @2.30.0 gnome/libgtop > libgweather @3.12.2 net/libgweather > libiconv @1.14 textproc/libiconv > libidl @0.8.14 devel/libidl > libidn @1.26 mail/libidn > libmodplug @0.8.8.5 audio/libmodplug > libnotify @0.7.6 devel/libnotify > libogg @1.3.2 multimedia/libogg > libopus @1.1 audio/libopus > libpaper @1.1.24 print/libpaper > libpixman @0.32.6 graphics/libpixman > libpng @1.6.12 graphics/libpng > libproxy @0.4.11 net/libproxy > librsvg @2.40.3 graphics/librsvg > libsamplerate @0.1.8 audio/libsamplerate > libsdl @1.2.15 devel/libsdl > libsecret @0.18 gnome/libsecret > libsigcxx2 @2.2.11 devel/libsigcxx2 > libsndfile @1.0.25 audio/libsndfile > libsoup @2.46.0 gnome/libsoup > libtasn1 @3.4 devel/libtasn1 > libtheora @1.1.1 multimedia/libtheora > libtool @2.4.2 devel/libtool > libuninameslist @20091231 devel/libuninameslist > libvorbis @1.3.4 audio/libvorbis > libvpx @1.3.0 multimedia/libvpx > libwnck @2.30.7 gnome/libwnck > libwnck3 @3.4.7 gnome/libwnck3 > libxml2 @2.9.1 textproc/libxml2 > libxslt @1.1.28 textproc/libxslt > libzzip @0.13.62 archivers/libzzip > lzo2 @2.06 archivers/lzo2 > m4 @1.4.16 devel/m4 > makedepend @1.0.4 x11/makedepend > md5sha1sum @0.9.5 sysutils/md5sha1sum > mesa @8.0.5 x11/mesa > mm-common @0.9.6 gnome/mm-common > mpfr @3.1.1-p2 devel/mpfr > ncurses @5.9 devel/ncurses > netpbm @10.67.02 graphics/netpbm > netpbm @10.67.02 graphics/netpbm > nettle @2.7.1 devel/nettle > nosetests_select @0.1 python/nosetests_select > openjade @1.3.2 textproc/openjade > openjpeg15 @1.5.0 graphics/openjpeg15 > openldap @2.4.39 databases/openldap > opensp @1.5.2 textproc/opensp > openssl @1.0.1i devel/openssl > orbit2 @2.14.19 devel/orbit2 > orc @0.4.18 devel/orc > p5.12-getopt-long @2.420.0 perl/p5-getopt-long > p5.12-getopt-long @2.420.0 perl/p5-getopt-long > p5.12-locale-gettext @1.50.0 perl/p5-locale-gettext > p5.12-locale-gettext @1.50.0 perl/p5-locale-gettext > p5.12-pathtools @3.470.0 perl/p5-pathtools > p5.12-pathtools @3.470.0 perl/p5-pathtools > p5.12-scalar-list-utils @1.390.0 perl/p5-scalar-list-utils > p5.12-scalar-list-utils @1.390.0 perl/p5-scalar-list-utils > p5.12-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport > p5.12-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport > p5.12-xml-parser @2.410.0 perl/p5-xml-parser > p5.12-xml-parser @2.410.0 perl/p5-xml-parser > p5.12-xml-sax @0.990.0 perl/p5-xml-sax > p5.12-xml-sax @0.990.0 perl/p5-xml-sax > p5.12-xml-sax-base @1.80.0 perl/p5-xml-sax-base > p5.12-xml-sax-base @1.80.0 perl/p5-xml-sax-base > p5.12-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat > p5.12-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat > p5.12-xml-simple @2.200.0 perl/p5-xml-simple > p5.12-xml-simple @2.200.0 perl/p5-xml-simple > p5.16-locale-gettext @1.50.0 perl/p5-locale-gettext > p5.16-locale-gettext @1.50.0 perl/p5-locale-gettext > p5.16-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport > p5.16-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport > p5.16-xml-parser @2.410.0 perl/p5-xml-parser > p5.16-xml-parser @2.410.0 perl/p5-xml-parser > p5.16-xml-sax @0.990.0 perl/p5-xml-sax > p5.16-xml-sax @0.990.0 perl/p5-xml-sax > p5.16-xml-sax-base @1.80.0 perl/p5-xml-sax-base > p5.16-xml-sax-base @1.80.0 perl/p5-xml-sax-base > p5.16-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat > p5.16-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat > p5.16-xml-simple @2.200.0 perl/p5-xml-simple > p5.16-xml-simple @2.200.0 perl/p5-xml-simple > p11-kit @0.20.4 security/p11-kit > p11-kit @0.20.4 security/p11-kit > pango @1.36.6 x11/pango > pango @1.36.6 x11/pango > pangomm @2.34.0 x11/pangomm > pangox-compat @0.0.2 x11/pangox-compat > pcre @8.35 devel/pcre > perl5 @5.12.4 lang/perl5 > perl5 @5.12.4 lang/perl5 > perl5.12 @5.12.5 lang/perl5.12 > perl5.16 @5.16.3 lang/perl5.16 > pgf @3.0.0 tex/pgf > pkgconfig @0.28 devel/pkgconfig > policykit @0.104 security/policykit > poppler @0.26.4 graphics/poppler > poppler-data @0.4.7 graphics/poppler-data > popt @1.16 devel/popt > psutils @p17 print/psutils > pulseaudio @5.0 audio/pulseaudio > py27-cairo @1.10.0 python/py-cairo > py27-gobject @2.28.6 python/py-gobject > py27-libxml2 @2.9.1 python/py-libxml2 > py27-nose @1.3.1 python/py-nose > py27-numpy @1.8.2 python/py-numpy > py27-setuptools @5.7 python/py-setuptools > py27-setuptools @5.7 python/py-setuptools > python27 @2.7.8 lang/python27 > python_select @0.3 sysutils/python_select > rarian @0.8.1 textproc/rarian > readline @6.3.003 devel/readline > schroedinger @1.0.11 multimedia/schroedinger > scons @2.3.0 devel/scons > shared-mime-info @1.3 devel/shared-mime-info > speex @1.2rc1 audio/speex > sqlite3 @3.8.4.3 databases/sqlite3 > startup-notification @0.12 gnome/startup-notification > t1lib @5.1.2 devel/t1lib > tcp_wrappers @20 net/tcp_wrappers > texinfo @5.2 textproc/texinfo > texlive-basic @34245 tex/texlive-basic > texlive-bin @2014 tex/texlive-bin > texlive-common @2014 tex/texlive-common > texlive-fonts-extra @34251 tex/texlive-fonts-extra > texlive-fonts-recommended @34089 tex/texlive-fonts-recommended > texlive-latex @34192 tex/texlive-latex > texlive-latex-extra @34239 tex/texlive-latex-extra > texlive-latex-recommended @34240 tex/texlive-latex-recommended > texlive-pictures @34010 tex/texlive-pictures > tiff @4.0.3 graphics/tiff > upower @0.99.1 devel/upower > vala @0.24.0 lang/vala > vim @7.4.258 editors/vim > vim @7.4.258 editors/vim > w3m @0.5.3 www/w3m > webkit-gtk @2.4.4 www/webkit-gtk > webkit-gtk3 @2.4.4 www/webkit-gtk > webp @0.4.0 graphics/webp > wget @1.15 net/wget > wxWidgets_select @1.0 sysutils/wxWidgets_select > x264 @20140124 multimedia/x264 > Xft2 @2.3.2 x11/Xft2 > xkbcomp @1.2.4 x11/xkbcomp > xkeyboard-config @2.5.1 x11/xkeyboard-config > xmlcatmgr @2.2 textproc/xmlcatmgr > xmlto @0.0.25 textproc/xmlto > xorg-bigreqsproto @1.1.2 x11/xorg-bigreqsproto > xorg-cf-files @1.0.4 x11/xorg-cf-files > xorg-compositeproto @0.4.2 x11/xorg-compositeproto > xorg-damageproto @1.2.1 x11/xorg-damageproto > xorg-dri2proto @2.8 x11/xorg-dri2proto > xorg-evieproto @1.1.1 x11/xorg-evieproto > xorg-fixesproto @5.0 x11/xorg-fixesproto > xorg-glproto @1.4.17 x11/xorg-glproto > xorg-inputproto @2.3.1 x11/xorg-inputproto > xorg-kbproto @1.0.6 x11/xorg-kbproto > xorg-libice @1.0.8 x11/xorg-libice > xorg-libpthread-stubs @0.3 x11/xorg-libpthread-stubs > xorg-libsm @1.2.1 x11/xorg-libsm > xorg-libX11 @1.6.2 x11/xorg-libX11 > xorg-libXau @1.0.8 x11/xorg-libXau > xorg-libXaw @1.0.12 x11/xorg-libXaw > xorg-libxcb @1.11 x11/xorg-libxcb > xorg-libXcomposite @0.4.4 x11/xorg-libXcomposite > xorg-libXcursor @1.1.14 x11/xorg-libXcursor > xorg-libXdamage @1.1.4 x11/xorg-libXdamage > xorg-libXdmcp @1.1.1 x11/xorg-libXdmcp > xorg-libXevie @1.0.3 x11/xorg-libXevie > xorg-libXext @1.3.3 x11/xorg-libXext > xorg-libXfixes @5.0.1 x11/xorg-libXfixes > xorg-libXi @1.7.4 x11/xorg-libXi > xorg-libXinerama @1.1.3 x11/xorg-libXinerama > xorg-libxkbfile @1.0.8 x11/xorg-libxkbfile > xorg-libxkbui @1.0.2 x11/xorg-libxkbui > xorg-libXmu @1.1.2 x11/xorg-libXmu > xorg-libXp @1.0.2 x11/xorg-libXp > xorg-libXrandr @1.4.2 x11/xorg-libXrandr > xorg-libXres @1.0.7 x11/xorg-libXres > xorg-libXt @1.1.4 x11/xorg-libXt > xorg-libXtst @1.2.2 x11/xorg-libXtst > xorg-libXv @1.0.10 x11/xorg-libXv > xorg-printproto @1.0.5 x11/xorg-printproto > xorg-randrproto @1.4.0 x11/xorg-randrproto > xorg-recordproto @1.14.2 x11/xorg-recordproto > xorg-renderproto @0.11.1 x11/xorg-renderproto > xorg-resourceproto @1.2.0 x11/xorg-resourceproto > xorg-util-macros @1.19.0 x11/xorg-util-macros > xorg-videoproto @2.3.2 x11/xorg-videoproto > xorg-xcb-proto @1.11 x11/xorg-xcb-proto > xorg-xcb-util @0.3.9 x11/xorg-xcb-util > xorg-xcmiscproto @1.2.2 x11/xorg-xcmiscproto > xorg-xextproto @7.3.0 x11/xorg-xextproto > xorg-xf86bigfontproto @1.2.0 x11/xorg-xf86bigfontproto > xorg-xineramaproto @1.2.1 x11/xorg-xineramaproto > xorg-xproto @7.0.26 x11/xorg-xproto > xorg-xtrans @1.3.4 x11/xorg-xtrans > xpm @3.5.11 x11/xpm > xrender @0.9.8 x11/xrender > XviD @1.3.3 multimedia/XviD > xz @5.0.5 archivers/xz > yasm @1.3.0 lang/yasm > yasm @1.3.0 lang/yasm > yelp @3.12.0 gnome/yelp > yelp-tools @3.12.1 gnome/yelp-tools > yelp-xsl @3.12.0 gnome/yelp-xsl > zlib @1.2.8 archivers/zlib > > ------------------------------------------------------------------------------ > Want excitement? > Manually upgrade your production database. > When you want reliability, choose Perforce > Perforce version control. Predictably reliable. > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk > _______________________________________________ > Reduce-algebra-developers mailing list > Reduce-algebra-developers@... > https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers -Mark   Re: [Reduce-algebra-developers] State of Mac OS builds From: Arthur Norman - 2014-09-14 20:08:13 On Sun, 14 Sep 2014, Mark Brethen wrote: > " > Content-Transfer-Encoding: quoted-printable > Mime-Version: 1.0 (1.0) > > What is the state of Mac OS builds on Mavericks (10.9)? I was unsuccessful building csl (fox, wx, no GUI) yesterday. Is the install documentation current? > I can and do build the CSL version on Mavericks but to get there I had to ensure I had a whole bunch of development packages loaded using macports. Here is the list of ports I have (in addition to the Mavericks version of Xcode and its command line tools). Many many be ones I installed for non-Reduce reasons. If things hurt then you need to send me a detailed explaination of what failed not just a global "it did not work" message... So I will watch out for that! Arthur aalib @1.4rc5 graphics/aalib aspell @0.60.6.1 textproc/aspell at-spi2-atk @2.12.1 gnome/at-spi2-atk at-spi2-core @2.12.0 gnome/at-spi2-core atk @2.12.0 devel/atk atkmm @2.22.7 gnome/atkmm autoconf @2.69 devel/autoconf automake @1.14.1 devel/automake babl @0.1.10 graphics/babl bison @2.7.1 devel/bison boehmgc @7.4.2 devel/boehmgc bzip2 @1.0.6 archivers/bzip2 cairo @1.12.16 graphics/cairo cairomm @1.10.0 graphics/cairomm cmake @3.0.0 devel/cmake coreutils @8.23 sysutils/coreutils curl @7.37.1 net/curl curl-ca-bundle @7.37.1 net/curl cyrus-sasl2 @2.1.26 security/cyrus-sasl2 db46 @4.6.21 databases/db46 db_select @0.1 sysutils/db_select dbus @1.8.6 devel/dbus dbus-glib @0.102 devel/dbus-glib dbus-python27 @1.2.0 devel/dbus-python desktop-file-utils @0.22 gnome/desktop-file-utils docbook-xml @5.0 textproc/docbook-xml docbook-xml-4.1.2 @5.0 textproc/docbook-xml docbook-xml-4.2 @5.0 textproc/docbook-xml docbook-xml-4.3 @5.0 textproc/docbook-xml docbook-xml-4.4 @5.0 textproc/docbook-xml docbook-xml-4.5 @5.0 textproc/docbook-xml docbook-xml-5.0 @5.0 textproc/docbook-xml docbook-xsl @1.78.1 textproc/docbook-xsl enca @1.15 textproc/enca enchant @1.6.0 textproc/enchant exiv2 @0.24 graphics/exiv2 expat @2.1.0 textproc/expat fftw-3 @3.3.4 math/fftw-3 fftw-3-single @3.3.4 math/fftw-3 findutils @4.4.2 sysutils/findutils flac @1.3.0 audio/flac flex @2.5.37 devel/flex fontconfig @2.11.1 graphics/fontconfig fontforge @20120731 graphics/fontforge fop @1.1 textproc/fop freetype @2.5.3 print/freetype fribidi @0.19.6 textproc/fribidi gawk @4.1.1 lang/gawk gccmakedep @1.0.2 x11/gccmakedep gconf @3.2.6 gnome/gconf gdbm @1.11 databases/gdbm gdk-pixbuf2 @2.30.8 graphics/gdk-pixbuf2 geoclue @0.12.99 devel/geoclue geoclue2 @2.1.9 devel/geoclue2 geocode-glib @3.12.2 gnome/geocode-glib getopt @1.1.5 sysutils/getopt gettext @0.19.2 devel/gettext ghostscript @9.10 print/ghostscript giflib @4.2.3 graphics/giflib glib-networking @2.40.1 gnome/glib-networking glib2 @2.40.0 devel/glib2 glibmm @2.40.0 devel/glibmm gmake @4.0 devel/gmake gmp @6.0.0 devel/gmp gnome-common @3.12.0 gnome/gnome-common gnome-desktop @3.12.2 gnome/gnome-desktop gnome-doc-utils @0.20.10 gnome/gnome-doc-utils gnome-getting-started-docs @3.12.1 gnome/gnome-getting-started-docs gnome-icon-theme @3.12.0 gnome/gnome-icon-theme gnome-icon-theme-symbolic @3.12.0 gnome/gnome-icon-theme-symbolic gnome-mime-data @2.18.0 gnome/gnome-mime-data gnome-settings-daemon @3.12.2 gnome/gnome-settings-daemon gnome-system-monitor @3.12.2 gnome/gnome-system-monitor gnome-themes-standard @3.12.0 gnome/gnome-themes-standard gnome-user-docs @3.12.2 gnome/gnome-user-docs gnome-vfs @2.24.4 gnome/gnome-vfs gnutar @1.27.1 archivers/gnutar gnutls @3.3.7 devel/gnutls gnutls @3.3.7 devel/gnutls gobject-introspection @1.40.0 gnome/gobject-introspection gperf @3.0.4 devel/gperf gpsd @3.5 net/gpsd graphite2 @1.2.4 graphics/graphite2 groff @1.22.2 sysutils/groff gsed @4.2.2 textproc/gsed gsettings-desktop-schemas @3.12.2 gnome/gsettings-desktop-schemas gstreamer1 @1.4.0 gnome/gstreamer1 gstreamer1-gst-plugins-base @1.4.0 gnome/gstreamer1-gst-plugins-base gtk-doc @1.20 gnome/gtk-doc gtk2 @2.24.24 gnome/gtk2 gtk3 @3.12.2 gnome/gtk3 gtkmm @2.24.4 x11/gtkmm gtkmm3 @3.12.0 x11/gtkmm3 gzip @1.6 archivers/gzip harfbuzz @0.9.35 graphics/harfbuzz harfbuzz @0.9.35 graphics/harfbuzz harfbuzz-icu @0.9.35 graphics/harfbuzz harfbuzz-icu @0.9.35 graphics/harfbuzz help2man @1.46.1 textproc/help2man hicolor-icon-theme @0.13 gnome/hicolor-icon-theme hunspell @1.3.3 textproc/hunspell icon-naming-utils @0.8.90 gnome/icon-naming-utils icu @53.1 devel/icu icu @53.1 devel/icu imake @1.0.5 x11/imake intltool @0.50.2 textproc/intltool intltool @0.50.2 textproc/intltool iso-codes @3.43 devel/iso-codes itstool @2.0.2 textproc/itstool jasper @1.900.1 graphics/jasper jbig2dec @0.11 graphics/jbig2dec jbigkit @2.1 graphics/jbigkit jpeg @9a graphics/jpeg json-c @0.12-20140410 textproc/json-c json-glib @1.0.2 devel/json-glib kerberos5 @1.11.3 net/kerberos5 lame @3.99.5 audio/lame lcms2 @2.6 graphics/lcms2 libarchive @3.1.2 archivers/libarchive libart_lgpl @2.3.21 graphics/libart_lgpl libass @0.10.2 multimedia/libass libatomic_ops @7.4.0 devel/libatomic_ops libbluray @0.6.0 multimedia/libbluray libcanberra @0.30 audio/libcanberra libcomerr @1.42.9 sysutils/e2fsprogs libcroco @0.6.8 gnome/libcroco libedit @20121213-3.0 devel/libedit libffi @3.1 devel/libffi libgcrypt @1.6.1 devel/libgcrypt libgnome-keyring @3.12.0 gnome/libgnome-keyring libgpg-error @1.13 devel/libgpg-error libgsf @1.14.30 gnome/libgsf libgtop @2.30.0 gnome/libgtop libgweather @3.12.2 net/libgweather libiconv @1.14 textproc/libiconv libidl @0.8.14 devel/libidl libidn @1.26 mail/libidn libmodplug @0.8.8.5 audio/libmodplug libnotify @0.7.6 devel/libnotify libogg @1.3.2 multimedia/libogg libopus @1.1 audio/libopus libpaper @1.1.24 print/libpaper libpixman @0.32.6 graphics/libpixman libpng @1.6.12 graphics/libpng libproxy @0.4.11 net/libproxy librsvg @2.40.3 graphics/librsvg libsamplerate @0.1.8 audio/libsamplerate libsdl @1.2.15 devel/libsdl libsecret @0.18 gnome/libsecret libsigcxx2 @2.2.11 devel/libsigcxx2 libsndfile @1.0.25 audio/libsndfile libsoup @2.46.0 gnome/libsoup libtasn1 @3.4 devel/libtasn1 libtheora @1.1.1 multimedia/libtheora libtool @2.4.2 devel/libtool libuninameslist @20091231 devel/libuninameslist libvorbis @1.3.4 audio/libvorbis libvpx @1.3.0 multimedia/libvpx libwnck @2.30.7 gnome/libwnck libwnck3 @3.4.7 gnome/libwnck3 libxml2 @2.9.1 textproc/libxml2 libxslt @1.1.28 textproc/libxslt libzzip @0.13.62 archivers/libzzip lzo2 @2.06 archivers/lzo2 m4 @1.4.16 devel/m4 makedepend @1.0.4 x11/makedepend md5sha1sum @0.9.5 sysutils/md5sha1sum mesa @8.0.5 x11/mesa mm-common @0.9.6 gnome/mm-common mpfr @3.1.1-p2 devel/mpfr ncurses @5.9 devel/ncurses netpbm @10.67.02 graphics/netpbm netpbm @10.67.02 graphics/netpbm nettle @2.7.1 devel/nettle nosetests_select @0.1 python/nosetests_select openjade @1.3.2 textproc/openjade openjpeg15 @1.5.0 graphics/openjpeg15 openldap @2.4.39 databases/openldap opensp @1.5.2 textproc/opensp openssl @1.0.1i devel/openssl orbit2 @2.14.19 devel/orbit2 orc @0.4.18 devel/orc p5.12-getopt-long @2.420.0 perl/p5-getopt-long p5.12-getopt-long @2.420.0 perl/p5-getopt-long p5.12-locale-gettext @1.50.0 perl/p5-locale-gettext p5.12-locale-gettext @1.50.0 perl/p5-locale-gettext p5.12-pathtools @3.470.0 perl/p5-pathtools p5.12-pathtools @3.470.0 perl/p5-pathtools p5.12-scalar-list-utils @1.390.0 perl/p5-scalar-list-utils p5.12-scalar-list-utils @1.390.0 perl/p5-scalar-list-utils p5.12-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport p5.12-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport p5.12-xml-parser @2.410.0 perl/p5-xml-parser p5.12-xml-parser @2.410.0 perl/p5-xml-parser p5.12-xml-sax @0.990.0 perl/p5-xml-sax p5.12-xml-sax @0.990.0 perl/p5-xml-sax p5.12-xml-sax-base @1.80.0 perl/p5-xml-sax-base p5.12-xml-sax-base @1.80.0 perl/p5-xml-sax-base p5.12-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat p5.12-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat p5.12-xml-simple @2.200.0 perl/p5-xml-simple p5.12-xml-simple @2.200.0 perl/p5-xml-simple p5.16-locale-gettext @1.50.0 perl/p5-locale-gettext p5.16-locale-gettext @1.50.0 perl/p5-locale-gettext p5.16-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport p5.16-xml-namespacesupport @1.110.0 perl/p5-xml-namespacesupport p5.16-xml-parser @2.410.0 perl/p5-xml-parser p5.16-xml-parser @2.410.0 perl/p5-xml-parser p5.16-xml-sax @0.990.0 perl/p5-xml-sax p5.16-xml-sax @0.990.0 perl/p5-xml-sax p5.16-xml-sax-base @1.80.0 perl/p5-xml-sax-base p5.16-xml-sax-base @1.80.0 perl/p5-xml-sax-base p5.16-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat p5.16-xml-sax-expat @0.510.0 perl/p5-xml-sax-expat p5.16-xml-simple @2.200.0 perl/p5-xml-simple p5.16-xml-simple @2.200.0 perl/p5-xml-simple p11-kit @0.20.4 security/p11-kit p11-kit @0.20.4 security/p11-kit pango @1.36.6 x11/pango pango @1.36.6 x11/pango pangomm @2.34.0 x11/pangomm pangox-compat @0.0.2 x11/pangox-compat pcre @8.35 devel/pcre perl5 @5.12.4 lang/perl5 perl5 @5.12.4 lang/perl5 perl5.12 @5.12.5 lang/perl5.12 perl5.16 @5.16.3 lang/perl5.16 pgf @3.0.0 tex/pgf pkgconfig @0.28 devel/pkgconfig policykit @0.104 security/policykit poppler @0.26.4 graphics/poppler poppler-data @0.4.7 graphics/poppler-data popt @1.16 devel/popt psutils @p17 print/psutils pulseaudio @5.0 audio/pulseaudio py27-cairo @1.10.0 python/py-cairo py27-gobject @2.28.6 python/py-gobject py27-libxml2 @2.9.1 python/py-libxml2 py27-nose @1.3.1 python/py-nose py27-numpy @1.8.2 python/py-numpy py27-setuptools @5.7 python/py-setuptools py27-setuptools @5.7 python/py-setuptools python27 @2.7.8 lang/python27 python_select @0.3 sysutils/python_select rarian @0.8.1 textproc/rarian readline @6.3.003 devel/readline schroedinger @1.0.11 multimedia/schroedinger scons @2.3.0 devel/scons shared-mime-info @1.3 devel/shared-mime-info speex @1.2rc1 audio/speex sqlite3 @3.8.4.3 databases/sqlite3 startup-notification @0.12 gnome/startup-notification t1lib @5.1.2 devel/t1lib tcp_wrappers @20 net/tcp_wrappers texinfo @5.2 textproc/texinfo texlive-basic @34245 tex/texlive-basic texlive-bin @2014 tex/texlive-bin texlive-common @2014 tex/texlive-common texlive-fonts-extra @34251 tex/texlive-fonts-extra texlive-fonts-recommended @34089 tex/texlive-fonts-recommended texlive-latex @34192 tex/texlive-latex texlive-latex-extra @34239 tex/texlive-latex-extra texlive-latex-recommended @34240 tex/texlive-latex-recommended texlive-pictures @34010 tex/texlive-pictures tiff @4.0.3 graphics/tiff upower @0.99.1 devel/upower vala @0.24.0 lang/vala vim @7.4.258 editors/vim vim @7.4.258 editors/vim w3m @0.5.3 www/w3m webkit-gtk @2.4.4 www/webkit-gtk webkit-gtk3 @2.4.4 www/webkit-gtk webp @0.4.0 graphics/webp wget @1.15 net/wget wxWidgets_select @1.0 sysutils/wxWidgets_select x264 @20140124 multimedia/x264 Xft2 @2.3.2 x11/Xft2 xkbcomp @1.2.4 x11/xkbcomp xkeyboard-config @2.5.1 x11/xkeyboard-config xmlcatmgr @2.2 textproc/xmlcatmgr xmlto @0.0.25 textproc/xmlto xorg-bigreqsproto @1.1.2 x11/xorg-bigreqsproto xorg-cf-files @1.0.4 x11/xorg-cf-files xorg-compositeproto @0.4.2 x11/xorg-compositeproto xorg-damageproto @1.2.1 x11/xorg-damageproto xorg-dri2proto @2.8 x11/xorg-dri2proto xorg-evieproto @1.1.1 x11/xorg-evieproto xorg-fixesproto @5.0 x11/xorg-fixesproto xorg-glproto @1.4.17 x11/xorg-glproto xorg-inputproto @2.3.1 x11/xorg-inputproto xorg-kbproto @1.0.6 x11/xorg-kbproto xorg-libice @1.0.8 x11/xorg-libice xorg-libpthread-stubs @0.3 x11/xorg-libpthread-stubs xorg-libsm @1.2.1 x11/xorg-libsm xorg-libX11 @1.6.2 x11/xorg-libX11 xorg-libXau @1.0.8 x11/xorg-libXau xorg-libXaw @1.0.12 x11/xorg-libXaw xorg-libxcb @1.11 x11/xorg-libxcb xorg-libXcomposite @0.4.4 x11/xorg-libXcomposite xorg-libXcursor @1.1.14 x11/xorg-libXcursor xorg-libXdamage @1.1.4 x11/xorg-libXdamage xorg-libXdmcp @1.1.1 x11/xorg-libXdmcp xorg-libXevie @1.0.3 x11/xorg-libXevie xorg-libXext @1.3.3 x11/xorg-libXext xorg-libXfixes @5.0.1 x11/xorg-libXfixes xorg-libXi @1.7.4 x11/xorg-libXi xorg-libXinerama @1.1.3 x11/xorg-libXinerama xorg-libxkbfile @1.0.8 x11/xorg-libxkbfile xorg-libxkbui @1.0.2 x11/xorg-libxkbui xorg-libXmu @1.1.2 x11/xorg-libXmu xorg-libXp @1.0.2 x11/xorg-libXp xorg-libXrandr @1.4.2 x11/xorg-libXrandr xorg-libXres @1.0.7 x11/xorg-libXres xorg-libXt @1.1.4 x11/xorg-libXt xorg-libXtst @1.2.2 x11/xorg-libXtst xorg-libXv @1.0.10 x11/xorg-libXv xorg-printproto @1.0.5 x11/xorg-printproto xorg-randrproto @1.4.0 x11/xorg-randrproto xorg-recordproto @1.14.2 x11/xorg-recordproto xorg-renderproto @0.11.1 x11/xorg-renderproto xorg-resourceproto @1.2.0 x11/xorg-resourceproto xorg-util-macros @1.19.0 x11/xorg-util-macros xorg-videoproto @2.3.2 x11/xorg-videoproto xorg-xcb-proto @1.11 x11/xorg-xcb-proto xorg-xcb-util @0.3.9 x11/xorg-xcb-util xorg-xcmiscproto @1.2.2 x11/xorg-xcmiscproto xorg-xextproto @7.3.0 x11/xorg-xextproto xorg-xf86bigfontproto @1.2.0 x11/xorg-xf86bigfontproto xorg-xineramaproto @1.2.1 x11/xorg-xineramaproto xorg-xproto @7.0.26 x11/xorg-xproto xorg-xtrans @1.3.4 x11/xorg-xtrans xpm @3.5.11 x11/xpm xrender @0.9.8 x11/xrender XviD @1.3.3 multimedia/XviD xz @5.0.5 archivers/xz yasm @1.3.0 lang/yasm yasm @1.3.0 lang/yasm yelp @3.12.0 gnome/yelp yelp-tools @3.12.1 gnome/yelp-tools yelp-xsl @3.12.0 gnome/yelp-xsl zlib @1.2.8 archivers/zlib   [Reduce-algebra-developers] State of Mac OS builds From: Mark Brethen - 2014-09-14 14:59:38 " Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (1.0) What is the state of Mac OS builds on Mavericks (10.9)? I was unsuccessful b= uilding csl (fox, wx, no GUI) yesterday. Is the install documentation curren= t? Sent from my iPhone=   Re: [Reduce-algebra-developers] Communication between algebraic and symbolic modes. From: abpetrov - 2014-09-14 08:57:21 Thank you for your answer. 11.09.2014 08:23, Rainer Schöpf пишет: > Hi, > > short answer: call reval on the result, i.e. add > > x: = reval x; > > Long answer: you may want to consult the Reduce Symbolic Mode primer, by Herbert > Melenk, available from the Reduce web site: > > http://reduce-algebra.sourceforge.net/doc/primer.html > > Chapter 3 "Algebraic data formats and evaluation" explains what you want to know > here. > > Regards, > Rainer > > > On Mon, 8 Sep 2014 at 00:00 -0000, abpetrov wrote: > > > Hi, > > I need to use some algebraic functions in symbolic mode. > > I wrote next symbolic function: > > > > symbolic procedure someproc( x); > > begin > > print "x"; > > print x; > > x := algebraic( sub(i=1, x)); > > print "x2"; > > print x; > > end; > > > > which makes some substitution. > > But when I call this function > > > > operator a,b; > > someproc('(plus (a i) (b (plus i 2)))); > > > > I have next result: > > > > someproc('(plus (a i) (b (plus i 2)))); > > "x" > > (plus (a i) (b (plus i 2))) > > "x2" > > (!*sq (((((a 1) . 1) . 1) (((b 3) . 1) . 1)) . 1) t) > > > > How can I get right result > > > > (plus (a 1) (b (plus 3))) but not > > (!*sq (((((a 1) . 1) . 1) (((b 3) . 1) . 1)) . 1) t) ? > > > > > > Best regards, Petrov Alexander. > > > > Rainer Schöpf   Re: [Reduce-algebra-developers] Communication between algebraic and symbolic modes. From: Rainer Schöpf - 2014-09-11 08:23:46 Hi, short answer: call reval on the result, i.e. add x: = reval x; Long answer: you may want to consult the Reduce Symbolic Mode primer, by Herbert Melenk, available from the Reduce web site: http://reduce-algebra.sourceforge.net/doc/primer.html Chapter 3 "Algebraic data formats and evaluation" explains what you want to know here. Regards, Rainer On Mon, 8 Sep 2014 at 00:00 -0000, abpetrov wrote: > Hi, > I need to use some algebraic functions in symbolic mode. > I wrote next symbolic function: > > symbolic procedure someproc( x); > begin > print "x"; > print x; > x := algebraic( sub(i=1, x)); > print "x2"; > print x; > end; > > which makes some substitution. > But when I call this function > > operator a,b; > someproc('(plus (a i) (b (plus i 2)))); > > I have next result: > > someproc('(plus (a i) (b (plus i 2)))); > "x" > (plus (a i) (b (plus i 2))) > "x2" > (!*sq (((((a 1) . 1) . 1) (((b 3) . 1) . 1)) . 1) t) > > How can I get right result > > (plus (a 1) (b (plus 3))) but not > (!*sq (((((a 1) . 1) . 1) (((b 3) . 1) . 1)) . 1) t) ? > > > Best regards, Petrov Alexander. > Rainer Schöpf  Re: [Reduce-algebra-developers] bibliography report and new paper using Reduce From: A C Hearn - 2014-09-10 20:55:16 Nelson, many thanks for doing this. Maybe you (or someone) should add these files to the Sourceforge repository. Tony   [Reduce-algebra-developers] bibliography report and new paper using Reduce From: Nelson H. F. Beebe - 2014-09-10 18:49:27 Some 23 years ago, on 27-Oct-1991, I began the cleanup of three bibliography files that Tony Hearn had long maintained to record publications about the Reduce algebra system and its applications. I continue to maintain those files, and some others, all of which can be found at these URLs: http://www.math.utah.edu/pub/tex/bib/redextra.bib http://www.math.utah.edu/pub/tex/bib/red-a-f.bib http://www.math.utah.edu/pub/tex/bib/red-g-l.bib http://www.math.utah.edu/pub/tex/bib/red-m-z.bib http://www.math.utah.edu/pub/tex/bib/redbooks.bib http://www.math.utah.edu/pub/tex/bib/redextra.bib http://www.math.utah.edu/pub/tex/bib/reduce.bib Change the suffix ".bib" to ".html" for a version that looks the same on the screen, but has live hyperlinks. Those bibliographies are part of a large collection in the TeX User Group and BibNet Project archives that now holds 1.05 million BibTeX entries that have undergone substantial cleanup from their original data. For many of the hundreds of journals in those archives, coverage is complete from the first issue forward. This past summer's work has produced a large expansion in the areas of probability and statistics, and you can see what is covered there by searching for the first instance of "prob" or "stat" in the Web page at http://www.math.utah.edu/pub/tex/bib/ Nightly cron jobs mine the combined archives to find new entries that are candidates for updates to the many subject-specific bibliographies, of which Reduce is one small area. There is also coverage of other algebra systems, including Axiom, Magma, Macsyma (and Vaxima and Maxima), Maple, and Mathematica, as well as coverage of two journals corresponding to the latter two. There is also coverage of the Matlab and Simulink systems in matlab.bib. This posting today has three purposes: (1) To draw your attention to the archives, in the event you are not familiar with them (the first section of the last URL, and of this one http://www.math.utah.edu/pub/bibnet , contain instructions for mirroring all, or selected parts, of the archives. The more archive mirrors we have, the safer we are.). (2) To request that in your copious free time', that you check your own Reduce-related publication lists to see whether the Utah archives are missing any entries, and if so, to alert me to them. I'll do any needed data cleanup, so simple cut-and-paste operations at your end should be just fine. (3) To draw your attention to a new Reduce-related article that corrects a previous one; BibTeX entries for both are given below. Because "Reduce" is a common, and commonly-used, noun, as well as a proper noun meaning our computer-algebra system, it is difficult to search databases for Reduce publications related to computer algebra. There are similar problems with Maple, where searches also find "maple leaf", hockey, "maple syrup", and "maple urine diseases, swamping the few algebra-related entries,, and also with the names of other algebra systems listed above. @String{j-MATHEMATICA-J = "Mathematica Journal"} @Article{Kampas:2005:TUR, author = "F. J. Kampas", title = "Tricks of Using {Reduce} to Solve {Kuhn--Tucker} Equations", journal = j-MATHEMATICA-J, volume = "9", number = "4", pages = "686--689", year = "2005", bibdate = "Wed Sep 10 10:57:02 2014", bibsource = "http://www.math.utah.edu/pub/tex/bib/mathematicaj.bib; http://www.math.utah.edu/pub/tex/bib/redextra.bib";, note = "See correction \cite{Parreiras:2014:URC}.", URL = "www.mathematica-journal.com/issue/v9i4/contents/Tricks9-4/Tricks9-4_2.html", acknowledgement = ack-nhfb, } @Article{Parreiras:2014:URC, author = "S{\'e}rgio O. Parreiras", title = "Using {Reduce} to Compute {Nash} Equilibria: Classroom Tools for Game Theory", journal = j-MATHEMATICA-J, volume = "16", number = "??", pages = "??--??", month = "????", year = "2014", CODEN = "????", DOI = "http://dx.doi.org/10.3888/tmj.16-3";, ISSN = "1047-5974 (print), 1097-1610 (electronic)", bibdate = "Wed Sep 10 10:37:47 MDT 2014", bibsource = "http://www.math.utah.edu/pub/tex/bib/mathematicaj.bib; http://www.math.utah.edu/pub/tex/bib/redextra.bib; http://www.mathematica-journal.com/issue/v0i0/";, note = "See \cite{Kampas:2005:TUR}.", URL = "http://www.mathematica-journal.com/2014/03/using-reduce-to-compute-nash-equilibria/";, abstract = "The Karush--Kuhn--Tucker equations (under suitable conditions) provide necessary and sufficient conditions for the solution of the problem of maximizing (minimizing) a concave (convex) function. This article corrects the program in \cite{Kampas:2005:TUR}, which computes the solution of Karush--Kuhn--Tucker equations. Our main goal, however, is to provide a program to compute the set of all Nash equilibria of a bimatrix game. The program works well for small'' games (i.e.$ 4 \times 4 $or smaller games); thus, in particular, it is suitable for constructing classroom examples and as an additional tool to empower students in classes using game theory. \ldots{}", acknowledgement = ack-nhfb, } ------------------------------------------------------------------------------- - Nelson H. F. Beebe Tel: +1 801 581 5254 - - University of Utah FAX: +1 801 581 4148 - - Department of Mathematics, 110 LCB Internet e-mail: beebe@... - - 155 S 1400 E RM 233 beebe@... beebe@... - - Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe/ - -------------------------------------------------------------------------------   Re: [Reduce-algebra-developers] strings From: Raffaele Vitolo - 2014-09-10 13:50:07 On 10/09/14 15:22, Kostas Oikonomou wrote: > Thanks for the "statement of support". Arthur was kind enough to send > me a draft of what you two are working on a few weeks ago. > > I have been working on two interfaces of Reduce/CSL to external > packages, one for numerical optimization, the other for numerical > integration. Whereas I have learned a number of things, with help from > Arthur, there are still major gaps in my understanding. I should add to the previous mail that for the moment we decided to postpone low-level fundamental stuff (like interfacing with C programs; I remember one of your mails) to another type of text which would describe CSL internals. In that case Arthur would be the proper author. Or maybe there is enough covering of this topic on the PSL side. However this kind of topics go beyond my current interests (and abilities), so somebody else might come into play. Raf. > Kostas > > On 09/10/2014 06:56, Raffaele Vitolo wrote: >>>> Nevertheless, I still find some parts of the symbolic/algebraic >>>> distinction difficult to, let us say, master. For example, >>> Very reasonable. In the commercial algebra systems you may find that the >>> inner "implementation level" is less available to you. In REDUCE >>> everything is. There is surely necessarily a step up needed as one moves >>> from being a "mere user" writing a few (albraic mode) procedures using >>> that level of Reduce as a scripting system to being someone who is getting >>> inside the guts of the system to extend it to do something new. Soem sorts >>> of extension can in fact be done remaining at the algebraic level. >>> Note that there is an existing tutorial on use of symbolic mode and Raff >>> Vitolo and I have been working on another - we will be getting together in >>> a week or so partly with the aim to get it finished and distributable. >> I'd like to say that I had (and I'm having) similar problems in >> converting myself from a "mere user" to a more advanced Reduce >> programmer, that's why we wrote the joint text. What happened is that I >> had a lot of questions and Arthur had good answers, and we collected all >> of them. >> >> Even the current discussion on concat will go into our text, so if you >> find an undocumented aspect of reduce's sources and there is an >> explanation in the mailing list I will eventually insert the topic in >> our document. >> >> We are really close to having a distributable version of the text, I >> hope that by the end of September we will inform the list. >> >> Raf >> >> >> ------------------------------------------------------------------------------ >> Want excitement? >> Manually upgrade your production database. >> When you want reliability, choose Perforce >> Perforce version control. Predictably reliable. >> http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk >> _______________________________________________ >> Reduce-algebra-developers mailing list >> Reduce-algebra-developers@... >> https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers > -- Raffaele Vitolo Dipartimento di Matematica e Fisica "E. De Giorgi" Universita' del Salento, Italy web: http://poincare.unisalento.it/vitolo   Re: [Reduce-algebra-developers] strings From: Kostas Oikonomou - 2014-09-10 13:23:05 Thanks for the "statement of support". Arthur was kind enough to send me a draft of what you two are working on a few weeks ago. I have been working on two interfaces of Reduce/CSL to external packages, one for numerical optimization, the other for numerical integration. Whereas I have learned a number of things, with help from Arthur, there are still major gaps in my understanding. Kostas On 09/10/2014 06:56, Raffaele Vitolo wrote: >>> Nevertheless, I still find some parts of the symbolic/algebraic >>> distinction difficult to, let us say, master. For example, >> Very reasonable. In the commercial algebra systems you may find that the >> inner "implementation level" is less available to you. In REDUCE >> everything is. There is surely necessarily a step up needed as one moves >> from being a "mere user" writing a few (albraic mode) procedures using >> that level of Reduce as a scripting system to being someone who is getting >> inside the guts of the system to extend it to do something new. Soem sorts >> of extension can in fact be done remaining at the algebraic level. >> Note that there is an existing tutorial on use of symbolic mode and Raff >> Vitolo and I have been working on another - we will be getting together in >> a week or so partly with the aim to get it finished and distributable. > I'd like to say that I had (and I'm having) similar problems in > converting myself from a "mere user" to a more advanced Reduce > programmer, that's why we wrote the joint text. What happened is that I > had a lot of questions and Arthur had good answers, and we collected all > of them. > > Even the current discussion on concat will go into our text, so if you > find an undocumented aspect of reduce's sources and there is an > explanation in the mailing list I will eventually insert the topic in > our document. > > We are really close to having a distributable version of the text, I > hope that by the end of September we will inform the list. > > Raf > > > ------------------------------------------------------------------------------ > Want excitement? > Manually upgrade your production database. > When you want reliability, choose Perforce > Perforce version control. Predictably reliable. > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk > _______________________________________________ > Reduce-algebra-developers mailing list > Reduce-algebra-developers@... > https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers   [Reduce-algebra-developers] solve/groesolve redundancy From: Jarmo Hietarinta - 2014-09-10 13:01:36 Hi, The following results from solve and groesolve are not optimal as they contain redundant entries: Reduce (Free CSL version), 14-Apr-11 ... 1: off nat; 2: load groebner; 3: a*(r*s+a*b); a*(a*b + r*s)$ 4: solve ws; Unknowns: {a,b,r,s} {{a=arbcomplex(8), b=( - r*s)/a, r=arbcomplex(9), s=arbcomplex(10)}, {a=0,b=arbcomplex(6),r=0,s=arbcomplex(7)}, {a=0,b=arbcomplex(4),r=arbcomplex(5),s=0}, {a=0, b=arbcomplex(1), r=arbcomplex(2), s=arbcomplex(3)}}$----------------- the last case has a=0, so the two cases before it are subcases and should not be included. 5: groesolve ws 3; ***** a**2*b + a*r*s invalid as list 6: groesolve{ws 3}; {{a=0,b=arbcomplex(11),r=arbcomplex(12),s=arbcomplex(13)}, {b=( - r*s)/a}, {s=0,a=0,b=arbcomplex(14),r=arbcomplex(15)}, {r=0,a=0,b=arbcomplex(16),s=arbcomplex(17)}}$ ------------------- the last two cases are subcases of the first one -------------------- If the order of variables is different, then redundant subcases disappear -------------------- but the result is not optimal for another reason. 7: r*(r*s+a*b); r*(a*b + r*s)$8: solve ws; Unknowns: {a,b,r,s} {{a=arbcomplex(21),b=0,r=arbcomplex(22),s=0}, {a=arbcomplex(18), b=arbcomplex(19), r=0, s=arbcomplex(20)}, {a=( - r*s)/b, b=arbcomplex(23), r=arbcomplex(24), s=arbcomplex(25)}}$ 9: groesolve{ws 7}; {{r=0,a=arbcomplex(26),b=arbcomplex(27),s=arbcomplex(28)}, {a=( - r*s)/b}, {b=0,s=0,a=arbcomplex(29),r=arbcomplex(30)}}\$ ---------------- The first case has r=0, after which we can assume r neq 0 and solve for s: s=-a*b/r, ---------------- This contains the case b=0,s=0 as well. (In fact, it would be nice to have the results in the form where also assumptions of nonzero entries are listed, as in {{{a=0},{}},{{b=-r*s/a},{a}}}, but perhaps that is too complicated to do.) Jarmo ---------------------------------------------------------------------------------- Jarmo Hietarinta, Prof. emer. Department of Physics and Astronomy University of Turku, FIN-20014 Turku, Finland mobile: +358-40-722 5685 ---------------------------------------------------------------------------------- 
 Re: [Reduce-algebra-developers] strings From: Raffaele Vitolo - 2014-09-10 11:13:04 >> Nevertheless, I still find some parts of the symbolic/algebraic >> distinction difficult to, let us say, master. For example, > > Very reasonable. In the commercial algebra systems you may find that the > inner "implementation level" is less available to you. In REDUCE > everything is. There is surely necessarily a step up needed as one moves > from being a "mere user" writing a few (albraic mode) procedures using > that level of Reduce as a scripting system to being someone who is getting > inside the guts of the system to extend it to do something new. Soem sorts > of extension can in fact be done remaining at the algebraic level. > Note that there is an existing tutorial on use of symbolic mode and Raff > Vitolo and I have been working on another - we will be getting together in > a week or so partly with the aim to get it finished and distributable. I'd like to say that I had (and I'm having) similar problems in converting myself from a "mere user" to a more advanced Reduce programmer, that's why we wrote the joint text. What happened is that I had a lot of questions and Arthur had good answers, and we collected all of them. Even the current discussion on concat will go into our text, so if you find an undocumented aspect of reduce's sources and there is an explanation in the mailing list I will eventually insert the topic in our document. We are really close to having a distributable version of the text, I hope that by the end of September we will inform the list. Raf 
 Re: [Reduce-algebra-developers] strings From: Arthur Norman - 2014-09-09 14:02:09 On Tue, 9 Sep 2014, Kostas Oikonomou wrote: > Dear Arthur, > > Thank you for the information. What I needed was not to make new > identifiers, but really simple concatenation. > E.g. > > if not member(alg, cuba_algorithms) then > rederr concat("Unknown algorithm: ", alg); If you are within a symbolic procedure then concat is available to you. > >> as a whole the user can not really notice any serious distinction >> between a function that was provided by the underlying Lisp and one >> that was implemented somewhere as part of Reduce itself - they just >> add end up as functions that can be used. > > Nevertheless, I still find some parts of the symbolic/algebraic > distinction difficult to, let us say, master. For example, Very reasonable. In the commercial algebra systems you may find that the inner "implementation level" is less available to you. In REDUCE everything is. There is surely necessarily a step up needed as one moves from being a "mere user" writing a few (albraic mode) procedures using that level of Reduce as a scripting system to being someone who is getting inside the guts of the system to extend it to do something new. Soem sorts of extension can in fact be done remaining at the algebraic level. Note that there is an existing tutorial on use of symbolic mode and Raff Vitolo and I have been working on another - we will be getting together in a week or so partly with the aim to get it finished and distributable. But even with that there will be a time needed to make sense of the overall structure of Reduce and see what has to be done. I can produce three suggestions: (1) pick some existing packages and review their code to see how they do things. (2) try developing your own code since the experience and expecially the frustrations will show you what you need to look at more. (3) post questions here and hope that one of us responds - but please realise we may have other duties and/or projects... > symbolic procedure cuba(alg,integrand,bounds); > ... > n := length(bounds); > write "here 1"; > lb := algebraic map(first,bounds); % could use car? > write "here 2"; > ... > end; > > But this is what happens: > > 6* cuba("vegas","f1",{{0,1},{0,1},{0,1}}); > here 1 > ***** Syntax error: 0(1)(0(1),0(1)) invalid > > I do not understand what is going on. When you are in symbolic mode the variable you have and data you are working with is lisp-style data and it may represent algebraic formulae but it is in some sense "just data". For instance the standard representation of the formula x+2 will be a list structure called a standrad quotient that is ((((x . 1) . 1) . 2) . 1) [internally read that as ((((x^1)*1)+2)/1) and ALL those levels including the "/1" are NEEDED if it is to be in the "standard quotient" form]. When you go back to algebraic mode the arguments you pass are required to represent complete formulae. If you were to pass a structure that was not just as expected you may get a crash or a diagnostic, eg the "Syntax error" you have provoked. IN general one needs to establish sort of gateways where algebraic mode requests get mapped onto calls to implementation-level functions, and that is achieved with properties like 'opfn and 'simpfn and various others. I would, I think, never write "algebraic map...". Apart from anything else to iterate over a list I would use the "for each v in l collect .." syntax. And in symbolic mode code I would use the functions print (and prin1, prin2, terpri, ttab) rather than write, since I view write as something aimed at the algebraic mode world... print and friends just display the data and hence REALLY let you debug what you are up to. A quick inspect suggests that packages/residue is about the shortest package there is to look at. It may not be the best match to your needs but ... > Kostas > > > On 09/09/2014 02:46, Arthur Norman wrote: >> On Mon, 8 Sep 2014, Kostas Oikonomou wrote: >> >>> Thank you. I read the documentation on RLISP, and I suspected it would >>> be something like "concat...", but couldn't find it. >>> Perhaps I didn't look in the right place? Anyhow, concatenation is all >>> I need at the moment. >>> >>> Kostas >>> >> There was a Standard Lisp Report prepared in 1979 (!) that described >> the functions from the underlying Lisp that RLISP and hence Reduce >> could rely on. IN various ways that is somewhat out of date now, and >> both the PSL and CSL Lisps have changed some details and added a >> number of further functions. However what is much more real is that >> (being sort of Lisp Based) in Reduce as a whole the user can not >> really notice any serious distinction between a function that was >> provided by the underlying Lisp and one that was implemented somewhere >> as part of Reduce itself - they just add end up as functions that can >> be used. There is no overall index or catalog of the functions that >> are present in the Reduce ikplementation and hance that you could use >> - except that (of course) they are defined in the Reduce source code - >> and in general there will be examples there of their use. At various >> times when something has been in the general Reduce source for some >> while and observe dto be heavily used one or both of the Lisp systems >> have provided a lower level and potentially faster implementation, so >> the boundary between what is "Lisp" and what is "Reduce" blurs somewhat. >> >> For work with strings maybe the key functions are >> concat concatenate two strings >> explode make a list of the characters that make up something >> explode2 as explode but without escape chars >> compress take a list of characters and make the single object >> they spell >> There are also sort of yet lower level functions perhaps with names >> like id2string. Basically anything could be done using >> explode/compress if needed. >> >> As before at present these live in the Reduce implementation level >> ("symbolic mode"). It will be easy to lift that and make it available >> at an algebraic level, but it needs through to ensure that what is >> provided is not a mere single-use hack but will serve people will in >> the future too. So eg allowing >> >> a := "string1"; >> b := "string2"; >> c := concat(a, b); >> >> would be simple. I can hardly believe that that will be what you mean. >> I might suspect you have something more in mind like >> >> variable := x; >> for i := 1:10 do ... >> ... concat(variable, concat("_", i)) ... >> >> expecting it to make new variables called x_1, x_2, x_3 etc. Now that >> is NOT concatenating strings, because a string is not the same as a >> variable. That is concatenating a mix of variable names, strings and >> numbers. But if that makes a variable, the person implementing this >> would need to decide what the behaviour on >> concat(x, y); >> concat("x", "y"); >> concat(1, 2); (does this give 12 or "12" or !12 ?) >> will do. So I will leave somebody else to think about that and get >> back to some of the other projects I am trying to make progress on >> ahead of the start of Term....! >> >> Arthur >> >> > > 
 Re: [Reduce-algebra-developers] strings From: Eberhard Schruefer - 2014-09-09 14:00:43 On 09/09/14 15:21, Kostas Oikonomou wrote: > > Nevertheless, I still find some parts of the symbolic/algebraic > distinction difficult to, let us say, master. For example, > > symbolic procedure cuba(alg,integrand,bounds); > ... > n := length(bounds); > write "here 1"; > lb := algebraic map(first,bounds); % could use car? > write "here 2"; > ... > end; > > But this is what happens: > > 6* cuba("vegas","f1",{{0,1},{0,1},{0,1}}); > here 1 > ***** Syntax error: 0(1)(0(1),0(1)) invalid I suppose you call this from Lisp (symbolic mode). Then you pass the structure {{0,1},{0,1},{0,1}} (which is a Lisp list) to the algebraic evaluator., but an algebraic list would have the structure {'list,{'list,0,1},{'list,0,1},{'list,0,1}} (i.e. each linear list is tagged by the type identifier list). So if you would go cuba("vegas","f1",{'list,{'list,0,1},{'list,0,1},{'list,0,1}}); your variable lb would get the value (list 0 0 0) i.e. the algebraic mode represantation of list {0,0,0}. If you would stay in symbolic mode you would write for example symbolic procedure cuba(alg,integrand,bounds); ... n := length(bounds); write "here 1"; lb := for each j in bounds collect car j; and now you could call cuba("vegas","f1",{{0,1},{0,1},{0,1}}); and lb would have the value (0 0 0). Eberhard >> On Mon, 8 Sep 2014, Kostas Oikonomou wrote: >> >>> Thank you. I read the documentation on RLISP, and I suspected it would >>> be something like "concat...", but couldn't find it. >>> Perhaps I didn't look in the right place? Anyhow, concatenation is all >>> I need at the moment. >>> >>> Kostas >>> >> There was a Standard Lisp Report prepared in 1979 (!) that described >> the functions from the underlying Lisp that RLISP and hence Reduce >> could rely on. IN various ways that is somewhat out of date now, and >> both the PSL and CSL Lisps have changed some details and added a >> number of further functions. However what is much more real is that >> (being sort of Lisp Based) in Reduce as a whole the user can not >> really notice any serious distinction between a function that was >> provided by the underlying Lisp and one that was implemented somewhere >> as part of Reduce itself - they just add end up as functions that can >> be used. There is no overall index or catalog of the functions that >> are present in the Reduce ikplementation and hance that you could use >> - except that (of course) they are defined in the Reduce source code - >> and in general there will be examples there of their use. At various >> times when something has been in the general Reduce source for some >> while and observe dto be heavily used one or both of the Lisp systems >> have provided a lower level and potentially faster implementation, so >> the boundary between what is "Lisp" and what is "Reduce" blurs somewhat. >> >> For work with strings maybe the key functions are >> concat concatenate two strings >> explode make a list of the characters that make up something >> explode2 as explode but without escape chars >> compress take a list of characters and make the single object >> they spell >> There are also sort of yet lower level functions perhaps with names >> like id2string. Basically anything could be done using >> explode/compress if needed. >> >> As before at present these live in the Reduce implementation level >> ("symbolic mode"). It will be easy to lift that and make it available >> at an algebraic level, but it needs through to ensure that what is >> provided is not a mere single-use hack but will serve people will in >> the future too. So eg allowing >> >> a := "string1"; >> b := "string2"; >> c := concat(a, b); >> >> would be simple. I can hardly believe that that will be what you mean. >> I might suspect you have something more in mind like >> >> variable := x; >> for i := 1:10 do ... >> ... concat(variable, concat("_", i)) ... >> >> expecting it to make new variables called x_1, x_2, x_3 etc. Now that >> is NOT concatenating strings, because a string is not the same as a >> variable. That is concatenating a mix of variable names, strings and >> numbers. But if that makes a variable, the person implementing this >> would need to decide what the behaviour on >> concat(x, y); >> concat("x", "y"); >> concat(1, 2); (does this give 12 or "12" or !12 ?) >> will do. So I will leave somebody else to think about that and get >> back to some of the other projects I am trying to make progress on >> ahead of the start of Term....! >> >> Arthur >> >> > > ------------------------------------------------------------------------------ > Want excitement? > Manually upgrade your production database. > When you want reliability, choose Perforce. > Perforce version control. Predictably reliable. > http://pubads.g.doubleclick.net/gampad/clk?id=157508191&iu=/4140/ostg.clktrk > _______________________________________________ > Reduce-algebra-developers mailing list > Reduce-algebra-developers@... > https://lists.sourceforge.net/lists/listinfo/reduce-algebra-developers 
 Re: [Reduce-algebra-developers] strings From: Kostas Oikonomou - 2014-09-09 13:21:04 Dear Arthur, Thank you for the information. What I needed was not to make new identifiers, but really simple concatenation. E.g. if not member(alg, cuba_algorithms) then rederr concat("Unknown algorithm: ", alg); > as a whole the user can not really notice any serious distinction > between a function that was provided by the underlying Lisp and one > that was implemented somewhere as part of Reduce itself - they just > add end up as functions that can be used. Nevertheless, I still find some parts of the symbolic/algebraic distinction difficult to, let us say, master. For example, symbolic procedure cuba(alg,integrand,bounds); ... n := length(bounds); write "here 1"; lb := algebraic map(first,bounds); % could use car? write "here 2"; ... end; But this is what happens: 6* cuba("vegas","f1",{{0,1},{0,1},{0,1}}); here 1 ***** Syntax error: 0(1)(0(1),0(1)) invalid I do not understand what is going on. Kostas On 09/09/2014 02:46, Arthur Norman wrote: > On Mon, 8 Sep 2014, Kostas Oikonomou wrote: > >> Thank you. I read the documentation on RLISP, and I suspected it would >> be something like "concat...", but couldn't find it. >> Perhaps I didn't look in the right place? Anyhow, concatenation is all >> I need at the moment. >> >> Kostas >> > There was a Standard Lisp Report prepared in 1979 (!) that described > the functions from the underlying Lisp that RLISP and hence Reduce > could rely on. IN various ways that is somewhat out of date now, and > both the PSL and CSL Lisps have changed some details and added a > number of further functions. However what is much more real is that > (being sort of Lisp Based) in Reduce as a whole the user can not > really notice any serious distinction between a function that was > provided by the underlying Lisp and one that was implemented somewhere > as part of Reduce itself - they just add end up as functions that can > be used. There is no overall index or catalog of the functions that > are present in the Reduce ikplementation and hance that you could use > - except that (of course) they are defined in the Reduce source code - > and in general there will be examples there of their use. At various > times when something has been in the general Reduce source for some > while and observe dto be heavily used one or both of the Lisp systems > have provided a lower level and potentially faster implementation, so > the boundary between what is "Lisp" and what is "Reduce" blurs somewhat. > > For work with strings maybe the key functions are > concat concatenate two strings > explode make a list of the characters that make up something > explode2 as explode but without escape chars > compress take a list of characters and make the single object > they spell > There are also sort of yet lower level functions perhaps with names > like id2string. Basically anything could be done using > explode/compress if needed. > > As before at present these live in the Reduce implementation level > ("symbolic mode"). It will be easy to lift that and make it available > at an algebraic level, but it needs through to ensure that what is > provided is not a mere single-use hack but will serve people will in > the future too. So eg allowing > > a := "string1"; > b := "string2"; > c := concat(a, b); > > would be simple. I can hardly believe that that will be what you mean. > I might suspect you have something more in mind like > > variable := x; > for i := 1:10 do ... > ... concat(variable, concat("_", i)) ... > > expecting it to make new variables called x_1, x_2, x_3 etc. Now that > is NOT concatenating strings, because a string is not the same as a > variable. That is concatenating a mix of variable names, strings and > numbers. But if that makes a variable, the person implementing this > would need to decide what the behaviour on > concat(x, y); > concat("x", "y"); > concat(1, 2); (does this give 12 or "12" or !12 ?) > will do. So I will leave somebody else to think about that and get > back to some of the other projects I am trying to make progress on > ahead of the start of Term....! > > Arthur > > 
 Re: [Reduce-algebra-developers] strings From: Arthur Norman - 2014-09-09 06:47:05 On Mon, 8 Sep 2014, Kostas Oikonomou wrote: > Thank you. I read the documentation on RLISP, and I suspected it would > be something like "concat...", but couldn't find it. > Perhaps I didn't look in the right place? Anyhow, concatenation is all > I need at the moment. > > Kostas > There was a Standard Lisp Report prepared in 1979 (!) that described the functions from the underlying Lisp that RLISP and hence Reduce could rely on. IN various ways that is somewhat out of date now, and both the PSL and CSL Lisps have changed some details and added a number of further functions. However what is much more real is that (being sort of Lisp Based) in Reduce as a whole the user can not really notice any serious distinction between a function that was provided by the underlying Lisp and one that was implemented somewhere as part of Reduce itself - they just add end up as functions that can be used. There is no overall index or catalog of the functions that are present in the Reduce ikplementation and hance that you could use - except that (of course) they are defined in the Reduce source code - and in general there will be examples there of their use. At various times when something has been in the general Reduce source for some while and observe dto be heavily used one or both of the Lisp systems have provided a lower level and potentially faster implementation, so the boundary between what is "Lisp" and what is "Reduce" blurs somewhat. For work with strings maybe the key functions are concat concatenate two strings explode make a list of the characters that make up something explode2 as explode but without escape chars compress take a list of characters and make the single object they spell There are also sort of yet lower level functions perhaps with names like id2string. Basically anything could be done using explode/compress if needed. As before at present these live in the Reduce implementation level ("symbolic mode"). It will be easy to lift that and make it available at an algebraic level, but it needs through to ensure that what is provided is not a mere single-use hack but will serve people will in the future too. So eg allowing a := "string1"; b := "string2"; c := concat(a, b); would be simple. I can hardly believe that that will be what you mean. I might suspect you have something more in mind like variable := x; for i := 1:10 do ... ... concat(variable, concat("_", i)) ... expecting it to make new variables called x_1, x_2, x_3 etc. Now that is NOT concatenating strings, because a string is not the same as a variable. That is concatenating a mix of variable names, strings and numbers. But if that makes a variable, the person implementing this would need to decide what the behaviour on concat(x, y); concat("x", "y"); concat(1, 2); (does this give 12 or "12" or !12 ?) will do. So I will leave somebody else to think about that and get back to some of the other projects I am trying to make progress on ahead of the start of Term....! Arthur 
 Re: [Reduce-algebra-developers] strings From: Kostas Oikonomou - 2014-09-08 23:14:46 Thank you. I read the documentation on RLISP, and I suspected it would be something like "concat...", but couldn't find it. Perhaps I didn't look in the right place? Anyhow, concatenation is all I need at the moment. Kostas On 09/08/2014 17:08, Arthur Norman wrote: > On Mon, 8 Sep 2014, Kostas Oikonomou wrote: >> Does Reduce have any facilities for dealing with strings? E.g. >> concatenate them? >> >> Kostas > If you look in the Reduce sources you will find that at the > implementation level you can do what you are liable to need (but e.g. > at present there is no fancy pattern matching library for strings that > does regular expression stuff - but if you needed that you could > implement it since that is the point of an open source system). At the > "normal user" level I do not think that these capabilities are > particularly exposed, however I can go > p := lisp concat("abc", "def"); > q := list ('list . explodec "some string")); > to some start at an effect. So that perhaps means that the answer is > "yes and no" in that as a simple user level Reduce works with > algebraic formulae not strings, but just beneath the surface there is > all the string handling that was needed to implement Reduce itself and > specifically its parsing and printing capabilities. > > Arthur > `

Showing results of 628

1 2 3 .. 26 > >> (Page 1 of 26)