

Article 359 of comp.theory.cell-automata:
Path: mimsy!haven!uflorida!uakari.primate.wisc.edu!zaphod.mps.ohio-state.edu!van-bc!ubc-cs!phillips
>From: [email-masked] (George Phillips)
Newsgroups: comp.theory.cell-automata
Subject: Wireworld: better cross, xor and and
Message-ID: <[email-masked]>
Date: 28 Feb 90 09:06:33 GMT
Sender: [email-masked]
Reply-To: [email-masked] (George Phillips)
Organization: UBC Department of Computer Science, Vancouver, B.C., Canada
Lines: 45

About a week ago, Ian Woollard <[email-masked]> sent me a
wonderful XOR gate he created:

........=
........=
.......===
.......=.=
===-#===.===#-==
.......===

And then used (A^B)^A == B to do a very good wire crossing.
BTW:  my wire crossings _do_ work, but who cares with this around:

...=.....=
...=.....=
..===...===
..=.=...=.=
.==.==.==.==
=.===.=.===.=
=.....=.....=
=....===....=
.=...=.=...=
..=.==.==.=
...=.===.=
...#.....#
...-.....-

While trying to understand the XOR gate, I realized that one of the
tricks was to make each incoming pulse cancel themselves.  I used this
idea to make a faster AND gate:

............==
...........=..=#-====-===#-
......==..===
.....=..=..=..=.=#-===#-====-
....===..==.==.=
....==.........=
====..=========

I don't know if it's me or wireworld, but none of the AND gates are
symmetric.  Hmmmm.  Maybe someone will surprise me -- getting new
patterns from the net is almost as much fun as building them yourself.

George Phillips [email-masked] {alberta,uw-beaver,uunet}!ubc-cs!phillips