Minimum working example:
x:=Indeterminate(Rationals,"x");
f:=Sum([1..1000],i->x^i);
PrintTo("~/temp.txt",f);
It prints to temp.txt
the following:
x^1000+x^999+x^998+x^997+x^996+x^995+x^994+x^993+x^992+x^991+x^990+x^989+x^988\
+x^987+x^986+x^985+x^984+x^983+x^982+x^981+x^980+x^979+x^978+x^977+x^976+x^975\
+x^974+x^973+x^972+x^971+x^970+x^969+x^968+x^967+x^966+x^965+x^964+x^963+x^962\
+x^961+x^960+x^959+x^958+x^957+x^956+x^955+x^954+x^953+x^952+x^951+x^950+x^949\
[snip]
How can I instead get it to print it on a single line in the text file?
That's a common need, and the solution is called SetPrintFormattingStatus
. See its documentation online
or just type ?SetPrintFormattingStatus
in the GAP prompt to see the documentation.
Note that you will have to use streams in this case, it does not work
with text files straightforwardly. OutputTextFile
(documented just after
SetPrintFormattingStatus
) is what you need to use.
In the example above, use
x:=Indeterminate(Rationals,"x");
f:=Sum([1..1000],i->x^i);
output := OutputTextFile( "poly", false );;
SetPrintFormattingStatus(output, false);
PrintTo(output,f);