ConwayLife.com - A community for Conway's Game of Life and related cellular automata
Home  •  LifeWiki  •  Forums  •  Download Golly

How to use Gfind?

For scripts to aid with computation or simulation in cellular automata.

How to use Gfind?

Postby Platypus5 » January 21st, 2012, 3:27 pm

I am trying to begin searching for my own spaceships, but I don't really know how to use Gfind. All I found is a text document when I opened what I thought was a download link.

Also, do I need to know C (or any computer language, for that matter) in order to use it? It says it requires platform-independent C, but I am not sure what that means.

If you don't think Gfind is right for me, can you recommend (if there are any) simpler search programs? (dumbed down, if you may?)

Sorry for this question.
Unsorted C/3 search output? Somewhat newish C/3 edgesparker? give it to me, and my "battleships" just may have a use for it. :)
Platypus5
 
Posts: 33
Joined: August 15th, 2011, 12:56 pm

Re: How to use Gfind?

Postby EricG » January 21st, 2012, 3:36 pm

Are you using a mac or pc or other? I've had a lot of luck with gfind and afind on the mac, and I could write up a quick list of steps for getting started using those programs on the mac.
EricG
 
Posts: 199
Joined: August 19th, 2011, 5:41 pm
Location: Chicago-area, USA

Re: How to use Gfind?

Postby Platypus5 » January 21st, 2012, 3:41 pm

EricG wrote:Are you using a mac or pc or other? I've had a lot of luck with gfind and afind on the mac, and I could write up a quick list of steps for getting started using those programs on the mac.


Why, yes I am.
Unsorted C/3 search output? Somewhat newish C/3 edgesparker? give it to me, and my "battleships" just may have a use for it. :)
Platypus5
 
Posts: 33
Joined: August 15th, 2011, 12:56 pm

Re: How to use Gfind?

Postby EricG » January 21st, 2012, 3:45 pm

Great! I'll write it up as time permits. Maybe we'll see new gunships - maybe even in other rules?
EricG
 
Posts: 199
Joined: August 19th, 2011, 5:41 pm
Location: Chicago-area, USA

Re: How to use Gfind?

Postby Platypus5 » January 21st, 2012, 5:58 pm

EricG wrote:Great! I'll write it up as time permits. Maybe we'll see new gunships - maybe even in other rules?


I've been wanting to do gunships in other rules, or perhaps even "hybrid" ships if I get my hands on the proper code to run two rules at once.

I have more conway life battleships at c/3, but I am not sure where to put them.

As for other speeds, I do have some slower and faster ones than c/3, but I don't usually build them due to personal taste. (2c5 and c2 ships can't engage each other except at close distances due to their speed relative to the gliders they shoot, and c4 ships are way too delicate.
Unsorted C/3 search output? Somewhat newish C/3 edgesparker? give it to me, and my "battleships" just may have a use for it. :)
Platypus5
 
Posts: 33
Joined: August 15th, 2011, 12:56 pm

Re: How to use Gfind?

Postby EricG » January 21st, 2012, 8:11 pm

Here's a description of how to run gfind on the mac. I'm sorry if the first part is too basic - I don't know what you already know. And more importantly, I'm sorry if the second part is not informative enough -- I'm just a beginner at searching for spaceships. If anyone has any tips, elaborations, or criticism, please share. Platypus5, if the following doesn't get gfind running for you, please let us know. I should also note that I'm using OS 10.6.8 but I've also succesfully gotten gfind running on OS 10.3.9.


Download the latest version of gfind here:
http://www.ics.uci.edu/~eppstein/ca/gfind.c

Place gfind.c in its own folder -- call the folder whatever you want, but for this post, lets call the folder "SearchPrograms".

In your Applications folder, there is a folder called Utillities. Inside Utilities, double click on the program called "Terminal" (or "Terminal.app").

You should see a prompt that looks like this:
YourComputerName:YourUserName$ [cursor]

We're going to use the "cd" command to change the directory to the SearchPrograms folder (folder is just another word for directory).

At the prompt, type "cd " but don't hit enter yet. Note there is a space after "cd". Go to the desktop, drag the "SearchPrograms" folder icon from your desktop onto the terminal program's window, and then click back into the terminal program.

At the prompt, you should see something like this:
YourComputerName:YourUserName$ cd /Users/YourUserName/Documents/CA-stuff/SearchPrograms

This just means we're going to change the directory to the SearchPrograms folder. You could have typed that long file pathway, but dragging it is easier.

Now hit "enter".

You should see something like this at the prompt: YourComputerName:SearchPrograms$

Now we're going to compile the gfind.c program using gcc commmand.

Type this: gcc -o gfind gfind.c
and hit enter.

There will be a pause, there may be some warning messages, and then you'll see the prompt again. Look in the SearchPrograms folder and see if there is now a file called "gfind" alongside "gfind.c". If so, you should be the proud new owner of a spaceship search program. You won't have to use the gcc command again, this was a one time step to convert the gfind.c program into a form your mac can use.

There are two ways to run gfind. The simplest way is to just click on the gfind icon. After you learn more about gfind, you may find it useful to take this shortcut. The shortcut has an annoying drawback -- if you do something wrong, the program quits and you have to start over. One you know what you're doing, this won't matter, but for now, lets stay in terminal program, which is more forgiving while you are experimenting.

Type this at the prompt: ./gfind
and hit enter.

You'll see David Eppstein's prompt for a rule. Lets start with Life.

Type this at the prompt: b3/s23

You'll see a bunch of messages scroll past. Use the scroll bar to look among the messages, and you'll find a few RLEs for some familiar spaceships.

To run gfind again, type ./gfind and hit enter. This time, maybe try a different rule (b36/s23, etc).

Now it is time to learn how to use gfind. Run gfind again, and this time enter "c" instead of a rule. This shows how to add additional information after the rule to specify what kind of search you want to run. The three key commands to get started are o (for orthogonal searches), d (for diagonal searches), and l (for, um, well, in simplest terms, the level of hardness of the search). This last one is particularly important if you want to find anything new. The default level of hardness is 50. If you don't turn up anything interesting, try increasing the level of hardess. Run gfind again, and try it.

I'm going to use b368/s245 as an example, but I confess I haven't run the following searches recently - it might not be the most interesting example.

Typing in b368/s245/ does a shallow search for spaceships in that rule.
b368/s245/l60 does a more exhaustive search.
b368/s245/l70 does a more exhaustive search still.
The searches start to get really slow for some lnn, where nn is between 80 and 100. Searches start to take hours, and as nn grows, they take days. This isn't necessarily unreasonable -- I believe some people on this forum have run searches that take months. But if you're less patient than that, don't worry! Specificying a specific speed and direction allows the program to prune the search space so that we can search big nn's.

b368/s245/o4 searches for orthogonal ships with period 4 at default level 50.
b368/s245/o4/l60 does the same search at level 60, which is more exhaustive.
b368/s245/o4/l70 is even more exhaustive still.
and so on. For any given length of time, you'll be able to search larger lnn's than if you didn't specify what speed and direction you were looking for.
Substitute "d" for "o" for diagonal searches, eg b368/s245/d7/l60.

You can further prune the searches (and thus allow lnn to get bigger) by studying the list gfind prints out when you enter "c" instead of a rule. Note that you can string together as many search specification as you like, separating them by slashes. You might want to look at the comments at the begining of the gfind.c file (use a text editor or word processor). And of course, you can read Eppstein's paper, "Searching for Spaceships": http://arxiv.org/abs/cs.AI/0004003

For new search sessions, start the termnial program. Change the director to SearchPrograms as described above, and then type ./gfind. Alternatively, just double click on the gfind icon in your SearchPrograms folder.

Note that many of the easiest searches have already been done. As you know, you can find these results at David Eppstein's website. However, Eppstein's lists aren't meant to be exhaustive, and for more obscure rules, even easy searcehs turn up interesting stuff not listed by Eppstein. For example, my favorite B0 rule is B013468/S02 and I found new spaceships at l80 for c/8, and at c/4 and c/6 for l110 and l125 respectively. (I've been meaning to post about this rule!)

Let me know if this post gets you running. If it does, I'll write up afind. Gfind is the right place to start, but given your particular goals, I think you'll like afind even better! (It generates more c/2 and c/3 ships than you'll ever be able to use, and it does it lightning fast!)
EricG
 
Posts: 199
Joined: August 19th, 2011, 5:41 pm
Location: Chicago-area, USA

Re: How to use Gfind?

Postby Platypus5 » January 21st, 2012, 9:45 pm

Thanks, but for some reason, I can't seem to compile gfind. It says "bash:gcc command not found"

I am going to try to look it up on my own, but do you have any idea what I am doing wrong?
Unsorted C/3 search output? Somewhat newish C/3 edgesparker? give it to me, and my "battleships" just may have a use for it. :)
Platypus5
 
Posts: 33
Joined: August 15th, 2011, 12:56 pm

Re: How to use Gfind?

Postby EricG » January 21st, 2012, 9:52 pm

[I'm deleting my initial reply, because it wasn't useful.]
Last edited by EricG on January 21st, 2012, 10:02 pm, edited 1 time in total.
EricG
 
Posts: 199
Joined: August 19th, 2011, 5:41 pm
Location: Chicago-area, USA

Re: How to use Gfind?

Postby EricG » January 21st, 2012, 9:56 pm

D'oh! I just realized what the problem is. You'll need to install the stuff for developers. A DVD came with your mac that has stuff for developers. I'm pretty sure installing xcode will give you gcc, but that might be overkill. Still, if you have room on your hard drive, the quickest solution might be to pop in the DVD, follow the prompts to install xcode , and then try the steps in my post again.
EricG
 
Posts: 199
Joined: August 19th, 2011, 5:41 pm
Location: Chicago-area, USA

Re: How to use Gfind?

Postby EricG » January 21st, 2012, 9:59 pm

If "pop in the developers DVD and install xcode" does not suffice as useful advice, this link might be helpful:
http://thomas1111.wordpress.com/2010/01 ... cc-on-mac/
EricG
 
Posts: 199
Joined: August 19th, 2011, 5:41 pm
Location: Chicago-area, USA

Re: How to use Gfind?

Postby Platypus5 » January 21st, 2012, 10:37 pm

thanks! After some work, I got it functioning. Now, I just need to figure out the command syntax.

Thank you!

EDIT: Note to self: level 120=bad
Unsorted C/3 search output? Somewhat newish C/3 edgesparker? give it to me, and my "battleships" just may have a use for it. :)
Platypus5
 
Posts: 33
Joined: August 15th, 2011, 12:56 pm

Re: How to use Gfind?

Postby Lewis » June 5th, 2015, 5:37 am

Sorry to bump a really old topic, but this seemed the best place to post this.

When I run a search using gfind, the output only gives (at most) one ship for each period/speed, and often it's not even of the full period (eg. it will output a c/2 p2 ship when searching speed 3c/6). When I search B3/S2456/o5 with /l70 it finds a 13 cell wide ship, but trying the search again with /l80 it finds a wider, shorter ship but doesn't output the 13-cell one.
Is there any way to stop this from happening, and to allow the software to output all (or at least more) ships for each speed?
User avatar
Lewis
 
Posts: 316
Joined: March 17th, 2009, 5:26 pm
Location: UK

Re: How to use Gfind?

Postby velcrorex » June 5th, 2015, 6:40 am

The parameter "f" controls how many spaceships gfind will output before terminating. So, /f100 will output 100 ships, assuming there are that many to be found in the first place.
-Josh Ball.
User avatar
velcrorex
 
Posts: 313
Joined: November 1st, 2009, 1:33 pm

Re: How to use Gfind?

Postby gmc_nxtman » October 24th, 2015, 8:33 pm

When trying to compile Paul Tooke's modified gfind, the following errors pop up:

GalensSlverBook:gfind galenmcholbi$ cc gfind-pt.c
gfind-pt.c:452:4: warning: implicit declaration of function '_cprintf' is
      invalid in C99 [-Wimplicit-function-declaration]
   _cprintf("\n[Paused, q to quit] ");
   ^
gfind-pt.c:453:8: warning: implicit declaration of function '_getch' is invalid
      in C99 [-Wimplicit-function-declaration]
   c = _getch();
       ^
gfind-pt.c:481:12: warning: format string is not a string literal
      (potentially insecure) [-Wformat-security]
    printf(timeStr);
           ^~~~~~~
gfind-pt.c:490:35: warning: implicitly declaring library function 'memset' with
      type 'void *(void *, int, unsigned long)'
void resetHash() { if (hash != 0) memset(hash,0,4*HASHSIZE); }
                                  ^
gfind-pt.c:490:35: note: include the header <string.h> or explicitly provide a
      declaration for 'memset'
gfind-pt.c:609:31: warning: '&&' within '||' [-Wlogical-op-parentheses]
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                               ~~ ~~~~~~~~~~^~~~~~~~~~~~~~~~~
gfind-pt.c:609:31: note: place parentheses around the '&&' expression to silence
      this warning
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                                            ^
                                  (                          )
gfind-pt.c:628:54: warning: format specifies type 'int' but the argument has
      type 'node' (aka 'unsigned long') [-Wformat]
                printf("Exceeded %d node limit, search aborted\n", QSIZE);
                                 ~~                                ^~~~~
                                 %lu
gfind-pt.c:363:15: note: expanded from macro 'QSIZE'
#define QSIZE ((node) (1<<qBits))
              ^~~~~~~~~~~~~~~~~~~
gfind-pt.c:809:15: warning: using the result of an assignment as a condition
      without parentheses [-Wparentheses]
        if (fp=fopen(dumpFile,"r"))
            ~~^~~~~~~~~~~~~~~~~~~~
gfind-pt.c:809:15: note: place parentheses around the assignment to silence this
      warning
        if (fp=fopen(dumpFile,"r"))
              ^
            (                     )
gfind-pt.c:809:15: note: use '==' to turn this assignment into an equality
      comparison
        if (fp=fopen(dumpFile,"r"))
              ^
              ==
gfind-pt.c:823:23: warning: format specifies type 'unsigned int' but the
      argument has type 'unsigned long' [-Wformat]
    fprintf(fp,"%u\n",FILEVERSION);
                ~~    ^~~~~~~~~~~
                %lu
gfind-pt.c:790:21: note: expanded from macro 'FILEVERSION'
#define FILEVERSION ((unsigned long) 2000102901)
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:835:23: warning: format specifies type 'unsigned int' but the
      argument has type 'unsigned long' [-Wformat]
    fprintf(fp,"%u\n",qHead-qStart);
                ~~    ^~~~~~~~~~~~
                %lu
gfind-pt.c:836:23: warning: format specifies type 'unsigned int' but the
      argument has type 'unsigned long' [-Wformat]
    fprintf(fp,"%u\n",qEnd-qStart);
                ~~    ^~~~~~~~~~~
                %lu
gfind-pt.c:857:16: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
                printf("%d", n);
                        ~~   ^
                        %ld
gfind-pt.c:861:29: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
        if (n >= 100) printf("%d", n/10);
                              ~~   ^~~~
                              %ld
gfind-pt.c:862:23: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
        else printf("%d.%d", n/10, n%10);
                     ~~      ^~~~
                     %ld
gfind-pt.c:862:29: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
        else printf("%d.%d", n/10, n%10);
                        ~~         ^~~~
                        %ld
gfind-pt.c:1219:30: warning: operator '<<' has lower precedence than '+'; '+'
      will be evaluated first [-Wshift-op-parentheses]
                                srows[i] = r << MAXWIDTH + 1;
                                             ~~ ~~~~~~~~~^~~
gfind-pt.c:1219:30: note: place parentheses around the '+' expression to silence
      this warning
                                srows[i] = r << MAXWIDTH + 1;
                                                ~~~~~~~~~^~~
15 warnings generated.
Undefined symbols for architecture x86_64:
  "__cprintf", referenced from:
      _doPause in gfind-pt-d57aa2.o
  "__getch", referenced from:
      _doPause in gfind-pt-d57aa2.o
  "_dequeue", referenced from:
      _breadthfirst in gfind-pt-d57aa2.o
  "_enqueue", referenced from:
      _doCompactPart2 in gfind-pt-d57aa2.o
      _findPaths in gfind-pt-d57aa2.o
      _search in gfind-pt-d57aa2.o
  "_isVisited", referenced from:
      _findPaths in gfind-pt-d57aa2.o
  "_pop", referenced from:
      _findPaths in gfind-pt-d57aa2.o
      _depthFirst in gfind-pt-d57aa2.o
  "_qIsEmpty", referenced from:
      _doCompact in gfind-pt-d57aa2.o
      _breadthfirst in gfind-pt-d57aa2.o
  "_safeShift", referenced from:
      _success in gfind-pt-d57aa2.o
  "_setVisited", referenced from:
      _doCompactPart2 in gfind-pt-d57aa2.o
      _findPaths in gfind-pt-d57aa2.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
GalensSlverBook:gfind galenmcholbi$


Using g++ is even worse:

GalensSlverBook:gfind galenmcholbi$ g++ gfind-pt.c
clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
gfind-pt.c:452:4: error: use of undeclared identifier '_cprintf'; did you mean
      'printf'?
   _cprintf("\n[Paused, q to quit] ");
   ^~~~~~~~
   printf
/usr/include/stdio.h:259:6: note: 'printf' declared here
int      printf(const char * __restrict, ...) __printflike(1, 2);
         ^
gfind-pt.c:453:8: error: use of undeclared identifier '_getch'
   c = _getch();
       ^
gfind-pt.c:456:7: error: use of undeclared identifier '_cprintf'; did you mean
      'printf'?
      _cprintf("... user abort\n");
      ^~~~~~~~
      printf
/usr/include/stdio.h:259:6: note: 'printf' declared here
int      printf(const char * __restrict, ...) __printflike(1, 2);
         ^
gfind-pt.c:461:7: error: use of undeclared identifier '_cprintf'; did you mean
      'printf'?
      _cprintf("... resumed\n");
      ^~~~~~~~
      printf
/usr/include/stdio.h:259:6: note: 'printf' declared here
int      printf(const char * __restrict, ...) __printflike(1, 2);
         ^
gfind-pt.c:481:12: warning: format string is not a string literal
      (potentially insecure) [-Wformat-security]
    printf(timeStr);
           ^~~~~~~
gfind-pt.c:490:35: error: use of undeclared identifier 'memset'
void resetHash() { if (hash != 0) memset(hash,0,4*HASHSIZE); }
                                  ^
gfind-pt.c:609:31: warning: '&&' within '||' [-Wlogical-op-parentheses]
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                               ~~ ~~~~~~~~~~^~~~~~~~~~~~~~~~~
gfind-pt.c:609:31: note: place parentheses around the '&&' expression to silence
      this warning
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                                            ^
                                  (                          )
gfind-pt.c:628:54: warning: format specifies type 'int' but the argument has
      type 'node' (aka 'unsigned long') [-Wformat]
                printf("Exceeded %d node limit, search aborted\n", QSIZE);
                                 ~~                                ^~~~~
                                 %lu
gfind-pt.c:363:15: note: expanded from macro 'QSIZE'
#define QSIZE ((node) (1<<qBits))
              ^~~~~~~~~~~~~~~~~~~
gfind-pt.c:809:15: warning: using the result of an assignment as a condition
      without parentheses [-Wparentheses]
        if (fp=fopen(dumpFile,"r"))
            ~~^~~~~~~~~~~~~~~~~~~~
gfind-pt.c:809:15: note: place parentheses around the assignment to silence this
      warning
        if (fp=fopen(dumpFile,"r"))
              ^
            (                     )
gfind-pt.c:809:15: note: use '==' to turn this assignment into an equality
      comparison
        if (fp=fopen(dumpFile,"r"))
              ^
              ==
gfind-pt.c:823:23: warning: format specifies type 'unsigned int' but the
      argument has type 'unsigned long' [-Wformat]
    fprintf(fp,"%u\n",FILEVERSION);
                ~~    ^~~~~~~~~~~
                %lu
gfind-pt.c:790:21: note: expanded from macro 'FILEVERSION'
#define FILEVERSION ((unsigned long) 2000102901)
                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:835:23: warning: format specifies type 'unsigned int' but the
      argument has type 'unsigned long' [-Wformat]
    fprintf(fp,"%u\n",qHead-qStart);
                ~~    ^~~~~~~~~~~~
                %lu
gfind-pt.c:836:23: warning: format specifies type 'unsigned int' but the
      argument has type 'unsigned long' [-Wformat]
    fprintf(fp,"%u\n",qEnd-qStart);
                ~~    ^~~~~~~~~~~
                %lu
gfind-pt.c:857:16: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
                printf("%d", n);
                        ~~   ^
                        %ld
gfind-pt.c:861:29: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
        if (n >= 100) printf("%d", n/10);
                              ~~   ^~~~
                              %ld
gfind-pt.c:862:23: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
        else printf("%d.%d", n/10, n%10);
                     ~~      ^~~~
                     %ld
gfind-pt.c:862:29: warning: format specifies type 'int' but the argument has
      type 'long' [-Wformat]
        else printf("%d.%d", n/10, n%10);
                        ~~         ^~~~
                        %ld
gfind-pt.c:1163:22: error: assigning to 'unsigned long *' from incompatible type
      'void *'
        sxsAllocData = malloc(sxsAllocRows * sizeof(unsigned long));
                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:1164:23: error: assigning to 'unsigned long *' from incompatible type
      'void *'
        sxsAllocData2 = malloc(sxsAllocRows * sizeof(unsigned long));
                      ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:1169:22: error: assigning to 'unsigned long *' from incompatible type
      'void *'
  ...= realloc(sxsAllocData, sxsAllocRows * sizeof(unsigned long));
     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:1170:23: error: assigning to 'unsigned long *' from incompatible type
      'void *'
  ...= realloc(sxsAllocData2, sxsAllocRows * sizeof(unsigned long));
     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:1219:30: warning: operator '<<' has lower precedence than '+'; '+'
      will be evaluated first [-Wshift-op-parentheses]
                                srows[i] = r << MAXWIDTH + 1;
                                             ~~ ~~~~~~~~~^~~
gfind-pt.c:1219:30: note: place parentheses around the '+' expression to silence
      this warning
                                srows[i] = r << MAXWIDTH + 1;
                                                ~~~~~~~~~^~~
gfind-pt.c:2568:20: error: assigning to 'enum mode' from incompatible type 'int'
    mode           = loadInt(fp);
                   ^ ~~~~~~~~~~~
gfind-pt.c:2582:7: error: assigning to 'node *' (aka 'unsigned long *') from
      incompatible type 'void *'
        base = malloc((QSIZE>>BASEBITS)*sizeof(node));
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:2583:7: error: assigning to 'row *' (aka 'unsigned short *') from
      incompatible type 'void *'
        rows = malloc(QSIZE*sizeof(row));
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:2591:8: error: assigning to 'node *' (aka 'unsigned long *') from
      incompatible type 'void *'
                hash = malloc(HASHSIZE*sizeof(node));
                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:2937:7: error: assigning to 'node *' (aka 'unsigned long *') from
      incompatible type 'void *'
        base = malloc((QSIZE>>BASEBITS)*sizeof(node));
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:2938:7: error: assigning to 'row *' (aka 'unsigned short *') from
      incompatible type 'void *'
        rows = malloc(QSIZE*sizeof(row));
             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~
gfind-pt.c:2946:8: error: assigning to 'node *' (aka 'unsigned long *') from
      incompatible type 'void *'
                hash = malloc(HASHSIZE*sizeof(node));
                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
12 warnings and 16 errors generated.
GalensSlverBook:gfind galenmcholbi$
User avatar
gmc_nxtman
 
Posts: 1056
Joined: May 26th, 2015, 7:20 pm

Re: How to use Gfind?

Postby Scorbie » October 24th, 2015, 10:48 pm

Oh, no. AFAIK getch is a Windows specific function... I'm not sure if anyone has tried to run it on Linux?
EDIT: and so is _cprintf... (You can google it and find out that it is from conio.h, a Windows-specific header.)
Best wishes to you, Scorbie
User avatar
Scorbie
 
Posts: 1329
Joined: December 7th, 2013, 1:05 am

Re: How to use Gfind?

Postby drc » March 17th, 2016, 5:08 pm

/tmp/ccuLRPhZ.o:gfind.c:(.text+0x4d9): undefined reference to `qIsEmpty'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x4d9): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `qIsEmpty'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x936): undefined reference to `enqueue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x936): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `enqueue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x981): undefined reference to `setVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x981): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `setVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3af5): undefined reference to `isVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3af5): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `isVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b0a): undefined reference to `enqueue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b0a): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `enqueue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b5a): undefined reference to `pop'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b5a): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `pop'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b73): undefined reference to `setVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b73): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `setVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b8c): undefined reference to `setVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x3b8c): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `setVisited'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x5c08): undefined reference to `pop'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x5c08): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `pop'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x6029): undefined reference to `dequeue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x6029): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `dequeue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x6042): undefined reference to `qIsEmpty'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x6042): additional relocation overflows omitted from the output
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x62f7): undefined reference to `enqueue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x635a): undefined reference to `dequeue'
/tmp/ccuLRPhZ.o:gfind.c:(.text+0x6363): undefined reference to `enqueue'
collect2: error: ld returned 1 exit status

wut
This post was brought to you by the letter D, for dishes that Andrew J. Wade won't do. (Also Daniel, which happens to be me.)
Current rule interest: B2ce3-ir4a5y/S2-c3-y
User avatar
drc
 
Posts: 1665
Joined: December 3rd, 2015, 4:11 pm
Location: creating useless things in OCA

Re: How to use Gfind?

Postby Rich Holmes » April 3rd, 2016, 7:52 pm

Final update: See http://clang.llvm.org/compatibility.html#inline. Removing the inline keyword is a reasonable choice. A perhaps better choice is changing "inline" to "static inline". Problem solved.

Original post and earlier updates:
Any success with these recent problems? I get fewer errors than the above, that's the good news:

$ gcc -o gfind gfind.c
gfind.c:397:31: warning: '&&' within '||' [-Wlogical-op-parentheses]
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                               ~~ ~~~~~~~~~~^~~~~~~~~~~~~~~~~
gfind.c:397:31: note: place parentheses around the '&&' expression to silence this warning
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                                            ^
                                  (                          )
gfind.c:783:30: warning: operator '<<' has lower precedence than '+'; '+' will be evaluated first [-Wshift-op-parentheses]
                                srows[i] = r << MAXWIDTH + 1;
                                             ~~ ~~~~~~~~~^~~
gfind.c:783:30: note: place parentheses around the '+' expression to silence this warning
                                srows[i] = r << MAXWIDTH + 1;
                                                ~~~~~~~~~^~~
2 warnings generated.
Undefined symbols for architecture x86_64:
  "_dequeue", referenced from:
      _search in gfind-c2713f.o
      _breadthfirst in gfind-c2713f.o
  "_enqueue", referenced from:
      _doCompact in gfind-c2713f.o
      _findPaths in gfind-c2713f.o
      _search in gfind-c2713f.o
  "_isVisited", referenced from:
      _findPaths in gfind-c2713f.o
  "_pop", referenced from:
      _findPaths in gfind-c2713f.o
      _depthFirst in gfind-c2713f.o
  "_qIsEmpty", referenced from:
      _doCompact in gfind-c2713f.o
      _breadthfirst in gfind-c2713f.o
  "_setVisited", referenced from:
      _doCompact in gfind-c2713f.o
      _findPaths in gfind-c2713f.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

on Mac OS X 10.11.4, where gcc -v returns
$ gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin15.4.0
Thread model: posix


None of these errors and warnings occur, and gfind compiles and runs successfully, on Linux (Debian Jessie) with gcc 4.9.2.

Update: I found buried in the code
// AKT: on Mac OS 10.6 or later compile for 32-bit ints:
// cc -o gfind -m32 gfind.c

but I still get errors:
$ gcc -o gfind -m32 gfind.c
gfind.c:397:31: warning: '&&' within '||' [-Wlogical-op-parentheses]
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                               ~~ ~~~~~~~~~~^~~~~~~~~~~~~~~~~
gfind.c:397:31: note: place parentheses around the '&&' expression to silence this warning
                if (x >= qTail || !EMPTY(x) && PARENT(x) >= y) y = x;
                                            ^
                                  (                          )
gfind.c:783:30: warning: operator '<<' has lower precedence than '+'; '+' will be evaluated first [-Wshift-op-parentheses]
                                srows[i] = r << MAXWIDTH + 1;
                                             ~~ ~~~~~~~~~^~~
gfind.c:783:30: note: place parentheses around the '+' expression to silence this warning
                                srows[i] = r << MAXWIDTH + 1;
                                                ~~~~~~~~~^~~
2 warnings generated.
Undefined symbols for architecture i386:
  "_dequeue", referenced from:
      _search in gfind-843a38.o
      _breadthfirst in gfind-843a38.o
  "_enqueue", referenced from:
      _doCompact in gfind-843a38.o
      _findPaths in gfind-843a38.o
      _search in gfind-843a38.o
  "_isVisited", referenced from:
      _findPaths in gfind-843a38.o
  "_pop", referenced from:
      _findPaths in gfind-843a38.o
      _depthFirst in gfind-843a38.o
  "_qIsEmpty", referenced from:
      _doCompact in gfind-843a38.o
      _breadthfirst in gfind-843a38.o
  "_setVisited", referenced from:
      _doCompact in gfind-843a38.o
      _findPaths in gfind-843a38.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)


Further update: Removing the "inline" keyword on the definitions of the mentioned functions gets rid of the errors and gfind seems to run without errors — though how much it slows things down not to have those functions explicitly inline I don't know.
Rich Holmes
 
Posts: 55
Joined: October 31st, 2015, 1:13 am

Re: How to use Gfind?

Postby shouldsee » February 18th, 2017, 7:09 am

Why do I got segmentation failed while using gfind for some rules?






>>>> rule B_S_alias
gfind 4.9, D. Eppstein, 20 August 2011
Rule: B_S_alias
Unexpected character '_' in command line.
For command line options, type 'gfind c'.







>>>> rule b0278s0125678
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0278s0125678
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b14568s68
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b14568s68
With B1, no such patterns exist.







>>>> rule b012467s1345
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b012467s1345
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b123s012358
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b123s012358
With B1, no such patterns exist.







>>>> rule b014567s157
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b014567s157
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b0127s126
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0127s126
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b01356s0234
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01356s0234
Searching for speed c/2, width 12.

x = 7, y = 8, rule = B01356/S0234
o$2o$3o$2b2o$3b2o$3b3o$2bo$3bob2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/2, width 26, diagonal, skew gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b012345678s012356
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b012345678s012356
Searching for speed c/2, width 12.

x = 12, y = 5, rule = B012345678/S012356
12o$12o$b3ob2ob3o$b10o$2b2o4b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b01467s
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01467s
Searching for speed c/2, width 12.

x = 12, y = 8, rule = B01467/S
o10bo$2o8b2o4$o2b2o2b2o2bo$12o$12o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.

x = 4, y = 5, rule = B01467/S
bo$2o$2b2o$b2o$2bo!

Searching for speed 2c/4, width 6.

x = 6, y = 4, rule = B01467/S
o4bo$2o2b2o$6o$6o!

Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.







>>>> rule b3458s014678
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b3458s014678
Constructing c/2 edge filters... found 2387/65536 patterns
Searching for speed c/2, width 12.

x = 12, y = 10, rule = B3458/S014678
bo2b2o2b2o$b3obo2bo2bo$3b9o$3o4bobo$2b6ob2o$3bo2bo2bo$b3ob3obo$
b2obob2o$obobobobo$2bo3bo!

Searching for speed c/3, width 8.

x = 8, y = 3, rule = B3458/S014678
2o4b2o$bo4bo$2b4o!

Searching for speed c/3, width 8, diagonal.
Searching for speed c/3, width 15, diagonal, bilateral symmetry.

x = 10, y = 10, rule = B3458/S014678
6b2o$7bo$3bo4b2o$2o3b2o2bo$2o2b3o$2o3bo$3bo3bo$b2o$2bob3o$4b3o!

Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.
Searching for speed c/4, width 7, glide-reflect symmetry.
Searching for speed c/4, width 11, bilateral symmetry.
Searching for speed c/4, width 12, bilateral symmetry.
Searching for speed 2c/4, width 6.
Searching for speed 2c/4, width 11, bilateral symmetry.

x = 9, y = 19, rule = B3458/S014678
3b3o$3bobo2$3b3o$3bobo$4bo$2bo3bo$bo5bo$b7o2$2b5o2$2bobobo$b7o$
3bobo$b3ob3o$b2obob2o$obobobobo$2bo3bo!

Searching for speed c/4, width 6, diagonal.
Searching for speed c/4, width 11, diagonal, bilateral symmetry.
Searching for speed c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 13, diagonal, bilateral symmetry, gutter.
Searching for speed c/5, width 5.

x = 5, y = 7, rule = B3458/S014678
obobo$b3o2$5o$2ob2o$bobo$2bo!

Searching for speed 2c/5, width 5.
Searching for speed 2c/5, width 5, glide-reflect symmetry.
Searching for speed 2c/5, width 6, glide-reflect symmetry.
Searching for speed 2c/5, width 9, bilateral symmetry.
Searching for speed 2c/5, width 10, bilateral symmetry.
Searching for speed c/5, width 5, diagonal.
Searching for speed c/5, width 9, diagonal, bilateral symmetry.
Searching for speed c/5, width 11, diagonal, bilateral symmetry, gutter.
Searching for speed c/6, width 4.
Searching for speed c/6, width 4, glide-reflect symmetry.
Searching for speed c/6, width 5, glide-reflect symmetry.
Searching for speed c/6, width 7, bilateral symmetry.
Searching for speed c/6, width 8, bilateral symmetry.
Searching for speed 2c/6, width 4.
Searching for speed 2c/6, width 7, bilateral symmetry.
Searching for speed 2c/6, width 8, bilateral symmetry.

x = 8, y = 3, rule = B3458/S014678
2o4b2o$bo4bo$2b4o!

Searching for speed 3c/6, width 4.
Searching for speed 3c/6, width 4, glide-reflect symmetry.
Searching for speed 3c/6, width 5, glide-reflect symmetry.
Searching for speed 3c/6, width 7, bilateral symmetry.
Searching for speed 3c/6, width 8, bilateral symmetry.
Searching for speed c/6, width 4, diagonal.
Searching for speed c/6, width 7, diagonal, bilateral symmetry.
Searching for speed c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed c/6, width 9, diagonal, bilateral symmetry, gutter.
Searching for speed 2c/6, width 4, diagonal.
Searching for speed 2c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 2c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 2c/6, width 9, diagonal, bilateral symmetry, gutter.
Search complete.







>>>> rule b0134s0235
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0134s0235
Searching for speed c/2, width 12.

x = 7, y = 5, rule = B0134/S0235
bo$3bo$7o$bo3bo$bo3bo!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/4, width 6.

x = 3, y = 9, rule = B0134/S0235
bo2$obo3$obo$bo2$bo!

Searching for speed 2c/4, width 6.

x = 5, y = 8, rule = B0134/S0235
4bo$3bo$3bo$2bo$bobo$2ob2o$b3o$bobo!

Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.







>>>> rule b145678s048
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b145678s048
With B1, no such patterns exist.







>>>> rule b01348s034
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01348s034
Searching for speed c/2, width 12.

x = 10, y = 4, rule = B01348/S034
o5bo2bo$2o4b4o$3o3bo2bo$obo4b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b013456s01234
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b013456s01234
Searching for speed c/2, width 12.

x = 6, y = 3, rule = B013456/S01234
o4bo$bo2bo$2b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b0124s23467
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0124s23467
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b378s0135678
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b378s0135678
Constructing c/2 edge filters... found 1912/65536 patterns
Searching for speed c/2, width 12.

x = 12, y = 7, rule = B378/S0135678
2bo6bo$2b3o3b2o$b6ob3o$b10o$b6o2b2o$3ob3o2b3o$3ob3o2b3o!

Searching for speed c/3, width 8.

x = 8, y = 9, rule = B378/S0135678
bo4bo$bob2obo$2b4o$b6o$b6o$8o$ob4obo$b6o$3b2o!

Searching for speed c/3, width 8, diagonal.
Searching for speed c/3, width 15, diagonal, bilateral symmetry.
Searching for speed c/3, width 17, diagonal, bilateral symmetry, gutter.
Searching for speed c/3, width 18, diagonal, skew gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.
Searching for speed c/4, width 7, glide-reflect symmetry.
Searching for speed c/4, width 11, bilateral symmetry.

x = 7, y = 11, rule = B378/S0135678
2bobo$bobobo$2b3o$2b3o$ob3obo$2b3o$bo3bo$2bobo$2bobo2$3bo!

Searching for speed 2c/4, width 6.
Searching for speed 2c/4, width 11, bilateral symmetry.

x = 9, y = 14, rule = B378/S0135678
4bo$2o2bo2b2o$bo2bo2bo$3b3o$3b3o$2b5o$ob5obo$b7o$bo2bo2bo$4bo$b
7o$2b5o$b3ob3o$2bo3bo!

Searching for speed c/4, width 6, diagonal.
Searching for speed c/4, width 11, diagonal, bilateral symmetry.
Searching for speed c/4, width 12, diagonal, glide-reflect symmetry.

x = 17, y = 17, rule = B378/S0135678
13b2obo$10bob5o$8bo2b5o$9b7o$7b8obo$6bob6obo$5b9o$6b2ob4o$5bobo
b3obo$2bo3bobobo$4b2o2b3o$o3b2o2$ob2obobo$2b2o$2obobo$2bo!

Searching for speed c/5, width 5.
Searching for speed c/5, width 5, glide-reflect symmetry.
Searching for speed c/5, width 6, glide-reflect symmetry.
Searching for speed c/5, width 9, bilateral symmetry.

x = 9, y = 14, rule = B378/S0135678
bo5bo$3bobo$3bobo$2bo3bo$bo5bo$bo2bo2bo$2ob3ob2o$2b5o$ob5obo$b7o
$3b3o$2b5o$3b3o$bo2bo2bo!

Searching for speed 2c/5, width 5.
Searching for speed 2c/5, width 5, glide-reflect symmetry.
Searching for speed 2c/5, width 6, glide-reflect symmetry.
Searching for speed 2c/5, width 9, bilateral symmetry.
Searching for speed 2c/5, width 10, bilateral symmetry.
Searching for speed 2c/5, width 11, bilateral symmetry, gutter.
Searching for speed c/5, width 5, diagonal.
Searching for speed c/5, width 9, diagonal, bilateral symmetry.
Searching for speed c/5, width 11, diagonal, bilateral symmetry, gutter.
Searching for speed c/5, width 12, diagonal, skew gutter.
Searching for speed c/6, width 4.
Searching for speed c/6, width 4, glide-reflect symmetry.
Searching for speed c/6, width 5, glide-reflect symmetry.
Searching for speed c/6, width 7, bilateral symmetry.

x = 7, y = 11, rule = B378/S0135678
o5bo$bo3bo$obobobo$b2ob2o$obobobo2$2bobo3$2b3o$3bo!

Searching for speed 2c/6, width 4.
Searching for speed 2c/6, width 7, bilateral symmetry.
Searching for speed 2c/6, width 8, bilateral symmetry.

x = 8, y = 9, rule = B378/S0135678
bo4bo$bob2obo$2b4o$b6o$b6o$8o$ob4obo$b6o$3b2o!

Searching for speed 3c/6, width 4.
Searching for speed 3c/6, width 4, glide-reflect symmetry.
Searching for speed 3c/6, width 5, glide-reflect symmetry.
Searching for speed 3c/6, width 7, bilateral symmetry.
Searching for speed 3c/6, width 8, bilateral symmetry.

x = 8, y = 9, rule = B378/S0135678
3b2o2$bob2obo$2b4o$b6o$b2o2b2o$b6o$3o2b3o$bo4bo!

Searching for speed c/6, width 4, diagonal.
Searching for speed c/6, width 7, diagonal, bilateral symmetry.
Searching for speed c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed c/6, width 9, diagonal, bilateral symmetry, gutter.
Searching for speed c/6, width 10, diagonal, skew gutter.
Searching for speed 2c/6, width 4, diagonal.
Searching for speed 2c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 2c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 2c/6, width 9, diagonal, bilateral symmetry, gutter.
Searching for speed 2c/6, width 10, diagonal, skew gutter.
Search complete.







>>>> rule b0234s023467
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0234s023467
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b35s4568
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b35s4568
Constructing c/2 edge filters... found 2382/65536 patterns
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.
Searching for speed c/2, width 13, glide-reflect symmetry.
Searching for speed c/2, width 23, bilateral symmetry.
Searching for speed c/2, width 24, bilateral symmetry.
Searching for speed c/2, width 25, bilateral symmetry, gutter.
Searching for speed c/3, width 8.

x = 7, y = 12, rule = B35/S4568
3b2o$b4o$3bo$2b2o$5o$b3o$4o2$2ob2o$2b5o$6o$b4o!

Searching for speed c/3, width 8, diagonal.
Searching for speed c/3, width 15, diagonal, bilateral symmetry.
Searching for speed c/3, width 17, diagonal, bilateral symmetry, gutter.
Searching for speed c/3, width 18, diagonal, skew gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.
Searching for speed c/4, width 7, glide-reflect symmetry.
Searching for speed c/4, width 11, bilateral symmetry.
Searching for speed c/4, width 12, bilateral symmetry.
Searching for speed c/4, width 13, bilateral symmetry, gutter.
Searching for speed 2c/4, width 6.
Searching for speed 2c/4, width 11, bilateral symmetry.
Searching for speed 2c/4, width 12, bilateral symmetry.
Searching for speed 2c/4, width 13, bilateral symmetry, gutter.
Searching for speed c/4, width 6, diagonal.
Searching for speed c/4, width 11, diagonal, bilateral symmetry.
Searching for speed c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 13, diagonal, bilateral symmetry, gutter.
Searching for speed c/4, width 14, diagonal, skew gutter.
Searching for speed c/5, width 5.
Searching for speed c/5, width 5, glide-reflect symmetry.
Searching for speed c/5, width 6, glide-reflect symmetry.
Searching for speed c/5, width 9, bilateral symmetry.
Searching for speed c/5, width 10, bilateral symmetry.
Searching for speed c/5, width 11, bilateral symmetry, gutter.
Searching for speed 2c/5, width 5.
Searching for speed 2c/5, width 5, glide-reflect symmetry.
Searching for speed 2c/5, width 6, glide-reflect symmetry.
Searching for speed 2c/5, width 9, bilateral symmetry.
Searching for speed 2c/5, width 10, bilateral symmetry.
Searching for speed 2c/5, width 11, bilateral symmetry, gutter.
Searching for speed c/5, width 5, diagonal.
Searching for speed c/5, width 9, diagonal, bilateral symmetry.
Searching for speed c/5, width 11, diagonal, bilateral symmetry, gutter.
Searching for speed c/5, width 12, diagonal, skew gutter.
Searching for speed c/6, width 4.
Searching for speed c/6, width 4, glide-reflect symmetry.
Searching for speed c/6, width 5, glide-reflect symmetry.
Searching for speed c/6, width 7, bilateral symmetry.
Searching for speed c/6, width 8, bilateral symmetry.
Searching for speed c/6, width 9, bilateral symmetry, gutter.
Searching for speed 2c/6, width 4.
Searching for speed 2c/6, width 7, bilateral symmetry.
Searching for speed 2c/6, width 8, bilateral symmetry.
Searching for speed 2c/6, width 9, bilateral symmetry, gutter.
Searching for speed 3c/6, width 4.
Searching for speed 3c/6, width 4, glide-reflect symmetry.
Searching for speed 3c/6, width 5, glide-reflect symmetry.
Searching for speed 3c/6, width 7, bilateral symmetry.
Searching for speed 3c/6, width 8, bilateral symmetry.
Searching for speed 3c/6, width 9, bilateral symmetry, gutter.
Searching for speed c/6, width 4, diagonal.
Searching for speed c/6, width 7, diagonal, bilateral symmetry.
Searching for speed c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed c/6, width 9, diagonal, bilateral symmetry, gutter.
Searching for speed c/6, width 10, diagonal, skew gutter.
Searching for speed 2c/6, width 4, diagonal.
Searching for speed 2c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 2c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 2c/6, width 9, diagonal, bilateral symmetry, gutter.
Searching for speed 2c/6, width 10, diagonal, skew gutter.
Search complete.







>>>> rule b24568s7
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b24568s7
Searching for speed c/1, width 25.
Queue full, depth 3, deepening 1, 524k/526k -> 398k/401k
Queue full, depth 4, deepening 1, 524k/527k -> 488k/492k
Queue full, depth 4, deepening 2, 524k/528k
x = 4, y = 2, rule = B24568/S7
o2bo$b2o!

Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.
Searching for speed c/2, width 13, glide-reflect symmetry.
Searching for speed c/2, width 23, bilateral symmetry.
Searching for speed c/2, width 24, bilateral symmetry.
Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/3, width 8.
Searching for speed c/3, width 8, glide-reflect symmetry.
Searching for speed c/3, width 9, glide-reflect symmetry.
Searching for speed c/3, width 15, bilateral symmetry.
Searching for speed c/3, width 16, bilateral symmetry.

x = 14, y = 17, rule = B24568/S7
o12bo$bo2bo4bo2bo2$4bob2obo$5bo2bo$6b2o$3b3o2b3o$6b2o$4b2o2b2o$
6b2o$4b2o2b2o$6b2o$5bo2bo$6b2o$4bo4bo$6b2o$4bo4bo!

Searching for speed 2c/3, width 8.
Searching for speed 2c/3, width 8, glide-reflect symmetry.
Searching for speed 2c/3, width 9, glide-reflect symmetry.
Searching for speed 2c/3, width 15, bilateral symmetry.
Searching for speed 2c/3, width 16, bilateral symmetry.
Searching for speed c/3, width 8, diagonal.
Searching for speed c/3, width 15, diagonal, bilateral symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.
Searching for speed c/4, width 7, glide-reflect symmetry.
Searching for speed c/4, width 11, bilateral symmetry.
Searching for speed c/4, width 12, bilateral symmetry.
Searching for speed 2c/4, width 6.
Searching for speed 2c/4, width 11, bilateral symmetry.
Searching for speed 2c/4, width 12, bilateral symmetry.
Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.
Searching for speed 3c/4, width 7, glide-reflect symmetry.
Searching for speed 3c/4, width 11, bilateral symmetry.
Searching for speed 3c/4, width 12, bilateral symmetry.
Searching for speed c/4, width 6, diagonal.
Searching for speed c/4, width 11, diagonal, bilateral symmetry.
Searching for speed c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed 2c/4, width 6, diagonal.
Searching for speed 2c/4, width 11, diagonal, bilateral symmetry.
Searching for speed 2c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed c/5, width 5.
Searching for speed c/5, width 5, glide-reflect symmetry.
Searching for speed c/5, width 6, glide-reflect symmetry.
Searching for speed c/5, width 9, bilateral symmetry.
Searching for speed c/5, width 10, bilateral symmetry.
Searching for speed 2c/5, width 5.
Searching for speed 2c/5, width 5, glide-reflect symmetry.
Searching for speed 2c/5, width 6, glide-reflect symmetry.
Searching for speed 2c/5, width 9, bilateral symmetry.
Searching for speed 2c/5, width 10, bilateral symmetry.
Searching for speed 3c/5, width 5.
Searching for speed 3c/5, width 5, glide-reflect symmetry.
Searching for speed 3c/5, width 6, glide-reflect symmetry.
Searching for speed 3c/5, width 9, bilateral symmetry.
Searching for speed 3c/5, width 10, bilateral symmetry.
Searching for speed 4c/5, width 5.
Searching for speed 4c/5, width 5, glide-reflect symmetry.
Searching for speed 4c/5, width 6, glide-reflect symmetry.
Searching for speed 4c/5, width 9, bilateral symmetry.
Searching for speed 4c/5, width 10, bilateral symmetry.
Searching for speed c/5, width 5, diagonal.
Searching for speed c/5, width 9, diagonal, bilateral symmetry.
Searching for speed 2c/5, width 5, diagonal.
Searching for speed 2c/5, width 9, diagonal, bilateral symmetry.
Searching for speed c/6, width 4.
Searching for speed c/6, width 4, glide-reflect symmetry.
Searching for speed c/6, width 5, glide-reflect symmetry.
Searching for speed c/6, width 7, bilateral symmetry.
Searching for speed c/6, width 8, bilateral symmetry.
Searching for speed 2c/6, width 4.
Searching for speed 2c/6, width 7, bilateral symmetry.
Searching for speed 2c/6, width 8, bilateral symmetry.
Searching for speed 3c/6, width 4.
Searching for speed 3c/6, width 4, glide-reflect symmetry.
Searching for speed 3c/6, width 5, glide-reflect symmetry.
Searching for speed 3c/6, width 7, bilateral symmetry.
Searching for speed 3c/6, width 8, bilateral symmetry.
Searching for speed 4c/6, width 4.
Searching for speed 4c/6, width 7, bilateral symmetry.
Searching for speed 4c/6, width 8, bilateral symmetry.
Searching for speed 5c/6, width 4.
Searching for speed 5c/6, width 4, glide-reflect symmetry.
Searching for speed 5c/6, width 5, glide-reflect symmetry.
Searching for speed 5c/6, width 7, bilateral symmetry.
Searching for speed 5c/6, width 8, bilateral symmetry.
Searching for speed c/6, width 4, diagonal.
Searching for speed c/6, width 7, diagonal, bilateral symmetry.
Searching for speed c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 2c/6, width 4, diagonal.
Searching for speed 2c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 2c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 3c/6, width 4, diagonal.
Searching for speed 3c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 3c/6, width 8, diagonal, glide-reflect symmetry.
Search complete.







>>>> rule b345678s0568
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b345678s0568
Searching for speed c/3, width 8.
Searching for speed c/3, width 8, glide-reflect symmetry.
Searching for speed c/3, width 9, glide-reflect symmetry.
Searching for speed c/3, width 15, bilateral symmetry.
Searching for speed c/3, width 16, bilateral symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.
Searching for speed c/4, width 7, glide-reflect symmetry.
Searching for speed c/4, width 11, bilateral symmetry.
Searching for speed c/4, width 12, bilateral symmetry.
Searching for speed c/4, width 6, diagonal.
Searching for speed c/4, width 11, diagonal, bilateral symmetry.
Searching for speed c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 13, diagonal, bilateral symmetry, gutter.
Searching for speed c/5, width 5.
Searching for speed c/5, width 5, glide-reflect symmetry.
Searching for speed c/5, width 6, glide-reflect symmetry.
Searching for speed c/5, width 9, bilateral symmetry.
Searching for speed c/5, width 10, bilateral symmetry.
Searching for speed 2c/5, width 5.
Searching for speed 2c/5, width 5, glide-reflect symmetry.
Searching for speed 2c/5, width 6, glide-reflect symmetry.
Searching for speed 2c/5, width 9, bilateral symmetry.
Searching for speed 2c/5, width 10, bilateral symmetry.
Searching for speed c/5, width 5, diagonal.
Searching for speed c/5, width 9, diagonal, bilateral symmetry.
Searching for speed c/5, width 11, diagonal, bilateral symmetry, gutter.
Searching for speed c/6, width 4.
Searching for speed c/6, width 4, glide-reflect symmetry.
Searching for speed c/6, width 5, glide-reflect symmetry.
Searching for speed c/6, width 7, bilateral symmetry.
Searching for speed c/6, width 8, bilateral symmetry.
Searching for speed 2c/6, width 4.
Searching for speed 2c/6, width 7, bilateral symmetry.
Searching for speed 2c/6, width 8, bilateral symmetry.
Searching for speed c/6, width 4, diagonal.
Searching for speed c/6, width 7, diagonal, bilateral symmetry.
Searching for speed c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed c/6, width 9, diagonal, bilateral symmetry, gutter.
Search complete.







>>>> rule b02358s0123
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b02358s0123
Searching for speed c/2, width 12.

x = 10, y = 3, rule = B02358/S0123
b2o4b2o$4o2b4o$o2bo2bo2bo!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b012358s01346
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b012358s01346
Searching for speed c/2, width 12.

x = 6, y = 4, rule = B012358/S01346
bo2bo$o4bo$bo2bo$2b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b0135s0
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0135s0
Searching for speed c/2, width 12.

x = 9, y = 6, rule = B0135/S0
o7bo$2bo3bo$bob3obo$o2bobo2bo2$b2o3b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/2, width 26, diagonal, skew gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b0127s126
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0127s126
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.
Searching for speed c/2, width 13, glide-reflect symmetry.
Searching for speed c/2, width 23, bilateral symmetry.
Searching for speed c/2, width 24, bilateral symmetry.
Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.
Searching for speed c/4, width 7, glide-reflect symmetry.
Searching for speed c/4, width 11, bilateral symmetry.

x = 11, y = 7, rule = B0127/S126
11o$o2b5o2bo$11o$o2b5o2bo$11o$11o$11o!

Searching for speed 2c/4, width 6.
Searching for speed 2c/4, width 11, bilateral symmetry.
Searching for speed 2c/4, width 12, bilateral symmetry.
Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.
Searching for speed 3c/4, width 7, glide-reflect symmetry.
Searching for speed 3c/4, width 11, bilateral symmetry.
Searching for speed 3c/4, width 12, bilateral symmetry.
Searching for speed c/4, width 6, diagonal.
Searching for speed c/4, width 11, diagonal, bilateral symmetry.
Searching for speed c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed 2c/4, width 6, diagonal.
Searching for speed 2c/4, width 11, diagonal, bilateral symmetry.
Searching for speed 2c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed 3c/4, width 6, diagonal.
Searching for speed 3c/4, width 11, diagonal, bilateral symmetry.
Searching for speed 3c/4, width 12, diagonal, glide-reflect symmetry.
Searching for speed c/6, width 4.
Searching for speed c/6, width 4, glide-reflect symmetry.
Searching for speed c/6, width 5, glide-reflect symmetry.
Searching for speed c/6, width 7, bilateral symmetry.
Searching for speed c/6, width 8, bilateral symmetry.
Searching for speed 2c/6, width 4.
Searching for speed 2c/6, width 7, bilateral symmetry.
Searching for speed 2c/6, width 8, bilateral symmetry.
Searching for speed 3c/6, width 4.
Searching for speed 3c/6, width 4, glide-reflect symmetry.
Searching for speed 3c/6, width 5, glide-reflect symmetry.
Searching for speed 3c/6, width 7, bilateral symmetry.
Searching for speed 3c/6, width 8, bilateral symmetry.
Searching for speed 4c/6, width 4.
Searching for speed 4c/6, width 7, bilateral symmetry.
Searching for speed 4c/6, width 8, bilateral symmetry.
Searching for speed 5c/6, width 4.
Searching for speed 5c/6, width 4, glide-reflect symmetry.
Searching for speed 5c/6, width 5, glide-reflect symmetry.
Searching for speed 5c/6, width 7, bilateral symmetry.
Searching for speed 5c/6, width 8, bilateral symmetry.
Searching for speed c/6, width 4, diagonal.
Searching for speed c/6, width 7, diagonal, bilateral symmetry.
Searching for speed c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 2c/6, width 4, diagonal.
Searching for speed 2c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 2c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 3c/6, width 4, diagonal.
Searching for speed 3c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 3c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 4c/6, width 4, diagonal.
Searching for speed 4c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 4c/6, width 8, diagonal, glide-reflect symmetry.
Searching for speed 5c/6, width 4, diagonal.
Searching for speed 5c/6, width 7, diagonal, bilateral symmetry.
Searching for speed 5c/6, width 8, diagonal, glide-reflect symmetry.
Search complete.







>>>> rule b0123467s1246
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b0123467s1246
Searching for speed c/2, width 12.

x = 5, y = 3, rule = B0123467/S1246
o3bo$5o$bobo!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.

x = 6, y = 21, rule = B0123467/S1246
2bo$2bo$b3o$2obo$4obo$3b3o$b3o$2b2o$b3o$3bobo$o2bo$6o$2o$o$b2o$
bobo$2b3o$3b2o$3obo$ob2o$b3o!

Searching for speed 2c/4, width 6.

x = 5, y = 3, rule = B0123467/S1246
o3bo$5o$bobo!

Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.







>>>> rule b1234s123468
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b1234s123468
With B1, no such patterns exist.







>>>> rule b01236s01237
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01236s01237
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b012367s0127
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b012367s0127
Searching for speed c/2, width 12.

x = 11, y = 10, rule = B012367/S0127
3bo3bo$bo3bo3bo$o4bo4bo$2b7o$2b2o3b2o$ob7obo$bob5obo$4b3o$3bo3b
o$2b3ob3o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b012368s0236
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b012368s0236
Searching for speed c/2, width 12.

x = 7, y = 4, rule = B012368/S0236
2b3o$ob3obo$3ob3o$2bobo!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.

x = 6, y = 35, rule = B012368/S0236
2o$o$obo$b4o$b3obo$b2o$3bo$2o$o2bo$b4o$2bo$b3o$3o$b4o3$4bo$obo$
b3o$b2o$2bobo$bobobo$bo2bo$2bo2bo$2b2obo$bobo$2b3o$2b2obo$2b2o$2b
2o$bo2bo$2b2o$2b2o2$2b2o!

Searching for speed 2c/4, width 6.

x = 5, y = 9, rule = B012368/S0236
b4o2$o2bo2$4o$4o$o2bo2$b2o!

Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.







>>>> rule b01234578s0126
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01234578s0126
Searching for speed c/2, width 12.

x = 11, y = 15, rule = B01234578/S0126
6b2o$5bo2bo$3bo2b2o$4b5o$3b4o$5b3o$3bobo$4b2obo$ob5o$9obo$b10o$
2bob6o$4b3obo$3bob2o$4b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b01358s0
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01358s0
Searching for speed c/2, width 12.

x = 9, y = 6, rule = B01358/S0
o7bo$2bo3bo$bob3obo$o2bobo2bo2$b2o3b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/2, width 26, diagonal, skew gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b01234s0123468
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01234s0123468
Searching for speed c/2, width 12.
Searching for speed c/2, width 12, glide-reflect symmetry.







>>>> rule b1234s0123468
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b1234s0123468
With B1, no such patterns exist.







>>>> rule b01347s134
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01347s134
Searching for speed c/2, width 12.

x = 5, y = 4, rule = B01347/S134
2bo$b3o$5o$obobo!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/4, width 6.

x = 6, y = 34, rule = B01347/S134
4bo$2bobo$2bobo$5o$2b2o$2b3o2$3b2o$2b2o$4bo$3b2o$3bo$bob2o4$2bo
b2o$3b2o$2b3o$2b3o$bobo$3bo$b2o$2obo$b2o$b3o$2obo$b3o$2b2o$2b2o$
2b2o2$2b2o$2b2o!

Searching for speed 2c/4, width 6.

x = 5, y = 9, rule = B01347/S134
o2bo$b2o2$2b2o$2b2o$bo2bo$2b2o2$2b2o!

Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.







>>>> rule b012478s0135
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b012478s0135
Searching for speed c/2, width 12.

x = 9, y = 4, rule = B012478/S0135
o2bobo2bo$o2bobo2bo$b2o3b2o$4ob4o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b013478s1
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b013478s1
Searching for speed c/2, width 12.

x = 10, y = 5, rule = B013478/S1
2bo5bo2$o2bo2bo2bo2$b2o4b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b01678s13
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b01678s13
Searching for speed c/2, width 12.

x = 10, y = 5, rule = B01678/S13
obo3bobo3$2obo2b2obo$b2o4b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/4, width 6.
Searching for speed c/4, width 6, glide-reflect symmetry.







>>>> rule b013468s23
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b013468s23
Searching for speed c/2, width 12.

x = 10, y = 2, rule = B013468/S23
o2bo2bo2bo$b2o4b2o!

Searching for speed c/2, width 12, diagonal.
Searching for speed c/2, width 23, diagonal, bilateral symmetry.
Searching for speed c/2, width 24, diagonal, glide-reflect symmetry.
Searching for speed c/2, width 25, diagonal, bilateral symmetry, gutter.
Searching for speed c/4, width 6.

x = 6, y = 11, rule = B013468/S23
3b2o$2b3o$b4o$2b3o$b4o$5o$2bobo$2bob2o$2b3o$2b2o$2b2o!

Searching for speed 2c/4, width 6.

x = 4, y = 2, rule = B013468/S23
o2bo$b2o!

Searching for speed 3c/4, width 6.
Searching for speed 3c/4, width 6, glide-reflect symmetry.







>>>> rule b012346s02346
gfind 4.9, D. Eppstein, 20 August 2011
Rule: b012346s02346
Searching for speed c/2, width 12.
Queue full, depth 19, deepening 2, 524k/1.7M
x = 8, y = 5, rule = B012346/S02346
ob4obo2$2ob2ob2o2$3b2o!

Searching for speed c/2, width 12, diagonal.
Queue full, depth 6135, deepening 2, 1.2k/3.9M -> 1/6.1k
Queue full, depth 12257, deepening 2, 1.2k/3.9M -> 1/12k
Queue full, depth 18369, deepening 2, 1.2k/3.9M -> 1/18k
Queue full, depth 24471, deepening 2, 1.2k/3.9M -> 1/24k
Queue full, depth 30563, deepening 2, 1.2k/3.9M -> 1/30k
Queue full, depth 36645, deepening 2, 1.2k/3.9M -> 1/36k
Queue full, depth 42719, deepening 2, 1.2k/3.9M -> 1/42k
Queue full, depth 48783, deepening 2, 1.2k/3.9M -> 1/48k
Queue full, depth 54837, deepening 2, 1.2k/3.9M -> 1/54k
Queue full, depth 60883, deepening 2, 1.2k/3.9M -> 1/60k
Queue full, depth 66919, deepening 2, 1.2k/3.9M -> 1/66k
Queue full, depth 72945, deepening 2, 1.2k/3.9M -> 1/72k
Queue full, depth 78961, deepening 2, 1.2k/3.9M -> 1/78k
Queue full, depth 84969, deepening 2, 1.2k/3.9M -> 1/84k
Queue full, depth 90967, deepening 2, 1.2k/3.9M -> 1/90k
Queue full, depth 96955, deepening 2, 1.2k/3.9M -> 1/96k
Queue full, depth 102935, deepening 2, 1.2k/3.9M -> 1/102k
Queue full, depth 108905, deepening 2, 1.2k/3.9M -> 1/108k
Queue full, depth 114865, deepening 2, 1.2k/3.9M -> 1/114k
Queue full, depth 120817, deepening 2, 1.2k/3.9M -> 1/120k
Queue full, depth 126759, deepening 2, 1.2k/3.9M -> 1/126k
Queue full, depth 132693, deepening 2, 1.2k/3.9M -> 1/132k
Queue full, depth 138617, deepening 2, 1.2k/3.9M -> 1/138k
Queue full, depth 144531, deepening 2, 1.2k/3.9M -> 1/144k
Queue full, depth 150437, deepening 2, 1.2k/3.9M -> 1/150k
Queue full, depth 156333, deepening 2, 1.2k/3.9M -> 1/156k
Queue full, depth 162219, deepening 2, 1.2k/3.9M -> 1/162k
Queue full, depth 168097, deepening 2, 1.2k/3.9M -> 1/168k
Queue full, depth 173965, deepening 2, 1.2k/3.9M -> 1/173k
Queue full, depth 179825, deepening 2, 1.2k/3.9M -> 1/179k
Queue full, depth 185675, deepening 2, 1.2k/3.9M -> 1/185k
Queue full, depth 191517, deepening 2, 1.2k/3.9M -> 1/191k
Queue full, depth 197349, deepening 2, 1.2k/3.9M -> 1/197k
Queue full, depth 203171, deepening 2, 1.2k/3.9M -> 1/203k
shouldsee
 
Posts: 376
Joined: April 8th, 2016, 8:29 am

Re: How to use Gfind?

Postby 83bismuth38 » March 5th, 2017, 3:03 pm

Platypus5 wrote:I've been wanting to do gunships in other rules, or perhaps even "hybrid" ships if I get my hands on the proper code to run two rules at once.

Look at the powder toy.
x = 8, y = 10, rule = B3/S23
3b2o$3b2o$2b3o$4bobo$2obobobo$3bo2bo$2bobo2bo$2bo4bo$2bo4bo$2bo!

No football of any dui mauris said that.
User avatar
83bismuth38
 
Posts: 382
Joined: March 2nd, 2017, 4:23 pm
Location: Still sitting around in Sagittarius A...

Re: How to use Gfind?

Postby Goldtiger997 » May 12th, 2017, 7:34 am

Don't know if this is the right thread, but how does one search for knightships and preview partial results with gfind-pt (I can't seem to decipher the inbuilt descriptions)?

FYI, I'm not going to use this for life, I was going to use it to search for knightships in non-totalistic rules.
User avatar
Goldtiger997
 
Posts: 323
Joined: June 21st, 2016, 8:00 am
Location: 11.329903°N 142.199305°E

Re: How to use Gfind?

Postby Sokwe » May 12th, 2017, 5:06 pm

Goldtiger997 wrote:how does one search for knightships... with gfind-pt

Simply include the /k command with the parameters. For example, "gfind-pt B3/S23/o6/n2/l120/k" will search for a width-10 (2,1)c/6 knightship.

Goldtiger997 wrote:how does one... preview partial results with gfind-pt

To preview partial results, you need to use the /p ("dump state") command at the start of the search. After each deepening step a file should be produced with the name "dumpNNNN" where "NNNN" is some number. To view the partial results in that file, run "gfind-pt p dumpNNNN > output.txt".
-Matthias Merzenich
Sokwe
Moderator
 
Posts: 1156
Joined: July 9th, 2009, 2:44 pm


Return to Scripts

Who is online

Users browsing this forum: No registered users and 2 guests