[Nauty] problem with genbg

Brendan McKay Brendan.McKay at anu.edu.au
Wed May 9 12:39:06 AEST 2018


Hi Susanne,

Like Gordon, I see only expected behaviour and cannot replicate your 
problem.

Please remove the "-q" and check if the resulting information line 
matches the
arguments you gave.  It should be ">A genbg n=5+5 e=15:15 d=1:3 D=5:3 z".
The "-l" and output file name won't appear.

Omitting "-l" from the >A line was not intentional.  You can add it:

         if (cutfree) CATMSG0("L");
         if (canonise) CATMSG0("l");        /* Insert this line */
         if (mod > 1) CATMSG2(" class=%d/%d",res,mod);

This is the simplest way to check that genbg is understanding the parameters
in the same way that you are.  After the change it should say
">A genbg n=5+5 e=15:15 d=1:3 D=5:3 zl".

There is one "gotcha" when using a script (or bash function). Namely, the
character ":" is special when immediately following a variable substitution.
If your -d or -D parameters are actually things like -d$1:$2, that won't 
work;
it should be -d$1\:$2.  This is a shell issue out of nauty's control.  
Looking
at the >A line should tell you if something like that is happening.  You can
also use -d1-3 instead of -d1:3 to avoid it.

The order and position of the arguments starting with "-" should not matter
at all.  Of the other parameters, the two size parameters (n1 n2) must 
appear
first, then in any order the edge range (e1:e2 or e1-e2), the splitting case
(res/mod) and the output file.

If there is an error, I'm anxious to find it, but replicating what your 
problem
is the first difficulty.

Cheers, Brendan.

On 9/5/18 3:33 am, Susanne Nieß wrote:
> Hi Brendan, Hi Gordon,
>
> Thank you for your answers. In fact I forgot to mention that I want 
> the output in a file, so the whole call is:
>
> genbg -d1:3 -D5:3 -q -z -l 5 5 mia
>
> I tried without the file name and found that then genbg gave stdout 
> six graphs but in the file there was only one. It is the last one of 
> the graphs seen in stdout. When I replaced the last 5 by 3 or 4 
> however, genbg did output more than one graph in a file. In addition, 
> I made the call to genbg from a script. I experimented a bit with 
> getting output to a file or to stdout, changing the order of the 
> parameters and adding or leaving out -l. I am getting 1 graph if I put 
> the parameters -q -z -l behind the -D5:3 (following an earlier advice) 
> AND give a file name; I am getting 6 graphs in any other case.
> As I found cases where it works, I coud be content but I am still 
> puzzled. Do you have an explanation for this?
>
> Regards,
> Susanne
>
>
>
>
> Am 03.05.2018 um 03:38 schrieb Brendan McKay:
>> Hi Susanne,
>>
>> The mailing list rejected your message for obscure reasons.  One 
>> possibility
>> is that the mailing list address only appeared in a Bcc header of 
>> your mail,
>> which is not allowed by the software.
>>
>> Anyway, I don't see the behaviour you describe.  In both nauty26r11 and
>> nauty27b13, I get six graphs:
>>
>> %%% genbg -q -z -d1:3 -D5:3 5 5
>> I?BeeQo[?
>> I?BeeQoM?
>> I?Bcuagk?
>> I?Bcuag[?
>> I?BcrbOq?
>> I?BcrbGM?
>>
>> Is there something else about the way you are running it or the way 
>> you are
>> collecting the output?
>>
>> Cheers, Brendan.
>>
>> On 3/5/18 3:38 am, Susanne Nieß wrote:
>>> HI,
>>>
>>> I am writing to seek your advice; namely I have a problem with 
>>> genbg. I called it with
>>>
>>> genbg -q -z -d1:3 -D5:3 5 5
>>>
>>> and it made only one graph with the edge set
>>>
>>> (1, 6) (2, 6) (3, 6) (1, 7) (2, 7) (5, 7) (1, 8) (3, 8) (4, 8) (2, 
>>> 9) (4, 9) (5, 9) (3, 10) (4, 10) (5, 10).
>>>
>>> I expected it to make 6 graphs. The other graphs I expected to see 
>>> have the edge sets
>>>
>>> (2, 6) (3, 6) (4, 6) (1, 7) (4, 7) (5, 7) (1, 8) (2, 8) (5, 8) (1, 
>>> 9) (2, 9) (3, 9) (1, 10) (2, 10) (4, 10)
>>>
>>> (3, 6) (4, 6) (5, 6) (1, 7) (4, 7) (5, 7) (1, 8) (2, 8) (5, 8) (1, 
>>> 9) (2, 9) (3, 9) (2, 10) (3, 10) (5, 10)
>>>
>>> (3, 6) (4, 6) (5, 6) (1, 7) (4, 7) (5, 7) (1, 8) (2, 8) (5, 8) (1, 
>>> 9) (2, 9) (3, 9) (1, 10) (2, 10) (4, 10)
>>>
>>> (3, 6) (4, 6) (5, 6) (1, 7) (4, 7) (5, 7) (1, 8) (2, 8) (4, 8) (2, 
>>> 9) (2, 9) (4, 9) (2, 10) (4, 10) (5, 10)
>>>
>>> (3, 6) (4, 6) (5, 6) (1, 7) (4, 7) (5, 7) (2, 8) (4, 8) (5, 8) (2, 
>>> 9) (3, 9) (5, 9) (2, 10) (3, 10) (4, 10)
>>>
>>> What I planned to do is to make all 3-uniform hypergraphs on 5 
>>> vertices that have exactly 5 edges, no isolated vertex and no vertex 
>>> of the highest possible degree.  By hand I have found 6 of them. 
>>> Their incidence graphs are the ones detailed above (up to 
>>> isomorphism, of course).
>>>
>>> Now I do not know what went wrong. Could you please help me?
>>>
>>> I look forward to hearing from you.
>>>
>>> Susanne
>>> _______________________________________________
>>> Nauty mailing list
>>> Nauty at anu.edu.au
>>> http://mailman.anu.edu.au/mailman/listinfo/nauty
>> _______________________________________________
>> Nauty mailing list
>> Nauty at anu.edu.au
>> http://mailman.anu.edu.au/mailman/listinfo/nauty
> _______________________________________________
> Nauty mailing list
> Nauty at anu.edu.au
> http://mailman.anu.edu.au/mailman/listinfo/nauty


More information about the Nauty mailing list