Sun Mon Tue Wed Thu Fri Sat
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
|
TPPW
At the end of the afternoon, I received a small package with an artwork by
Peter Struycken. It consist of a recreation of
"Process of continuing changing television screen" that he made in 1989 as a
commissioned work for the main hall of the VARA offices at Heuvellaan in Hilversum and which was later transfered to
Groninger Museum where it is known under the title
Vara-programma. The package contained a Cubieboard, which runs the program generating an ever changing sequence
of images according to the TPPW program. Floris van Maanen has done the programming using
Python. The front contained a print of one of the sequences, just as the
box it was packaged in. I don't know if it was send as a birthday present,
but I surely find it a very beautiful present.
Komputerstrukturen 2a
Today, I analyzed various pictures of the work
Komputerstrukture 2a by
Peter Struycken in order to check if the
reproductions of this work are correct. I studied this on February 6. I spend several hours manually 'digitizing' the four pictures
that were taken during the opening of Mondraanhuis on which the work was
visible. There were two pictures at close distance with people in front of it
only showing part of the work and two pictures taken from a distance, which
contained the whole work, but at a low resolution due to the distance.
Next I wrote a program that could
compare the data from these pictures with a reproduction of the work. This
program produced output with the data in which an underscore character is
placed at locations that are different from the other pictures. I compared
these with the original pictures and tried to fill them in again. This
resulted in corrected versions. I added these to the program and compared
them again. Later, I also included data from to newspaper articles with a
close up picture of the work with Peter Struycken in front of it. Finally,
all the data agreed with each other, leading to the conclusion that the
reproductions of Komputerstrukture 2a do not contain errors.
Mushrooms
I discovered some mushrooms in the lawn. I took this close-up picture
of the largest mushroom. It is really not that big at all.
Bug in compiler
Looks like I found a bug in the Visual Studio 2008 where it seems that certain
expressions in C++ are evaluated different when optimization is applied or not.
The combination of a static cast to the type "unsigned char" and a comparison
is causing the problem. The following expression, where str is a variable
of type "char *":
if ((unsigned char)(*str) < ' ')
The "char" type was introduced for the representation of characters. At first
only the ANSI characters raging from 0 to 128 (not including). These values
fit in 7 bits, so when the byte became the default smallest unit of storage
consisting of 8 bits, there were two choices to extend the range. The
implementors of C decided that the "char" type would be a signed type with
values ranging from -127 to 128. Although this chouce gives you a 'small'
integer with negative and positive values, it also has led to many
programming errors, because it is more natural to think that it ranges from
0 to 256. The type "unsigned char" ranges from 0 to 256, where the values 128
to 256 map on -127 to 0. Appearantly, it also has led to errors in the
machine code optimizer of Visual Studio 2008, which tries to find the most
compact sequence of instructions for executing the program.
Four colour theorem
In the past weeks, I have been working on trying to proof the Four colour theorem, based on sequences of 0, 1, and 2. The idea is that
if the faces (areas) of a planar graph can be coloured with at most four
colours, it must be possible to label all the vertices with either 1 or 2
such that the sum of the labels of each face is a multiple of 3. If you start
with just one vertex and label it with 1, you can lay a robe around it.
Assuming that one can restrict to planar graphs were all vertices have
degree 3, this robe will cross three faces, and we can assign a number to
each part, which equals the sum of labels of the vertices of that face inside
the robe. In the starting position all parts of the robe will be labelled 1.
Thus we can assign the sequence 111 to the robe. Now the robe can be extended
in a number of steps equal to the total number of vertices minus two, such
that every time a new vertex is included inside the robe. After these steps,
the robe will include all but one vertex. At each step the number of faces
that crosses the robe will be increased by one, when the new vertex has only
edge with the existing group of vertices, or decreased by one, when the new
vertex has two edges with the existing group. When the number of faces that
are crossed increases, the new vertex can be labeled with either 1 or 2,
meaning that the number of sequences that can be assigned to the new robe
position doubles. When the number of faces decreases, it is possible that
some sequences on the robe in the original position can not be transformed
into a sequence on the extended robe, and if it is possible, only one value
can be assigned to the new vertex.
If the four colour theorem is true, it means that it is always possible to
perform the above operation on any graph and end with a sequence 111 or 222
in the end (or possibly both) by a number of intermixed expansions (when the
number of faces increase by one) and contractions (when the number of faces
decreases by one). If we can proof this property of the set of sequences,
than we can proof the four colour theorem. If the four colour theorem is
true, any intermediat set of sequences can be contracted in any possible way.
If we could just proof that for each such set being expanded in any possible
way, has the same property, then the four colour theorem is proven. On first
sight this would not look very difficult at all, but that is not the case. I
made some attempt to prove this, and discovered that it cannot be proven for
just any set of sequences that can be contracted in any possible way. This
mean, that one has to discover some property of the sets of sequences that
can be reaced by any number of intermixed expansions and contractions. There
are simply an infinite number of them.
I started with some simple cases and discovered that it is always possible
to remove a face with four edges. This means that the Four colour theorem
only needs to be proven for graphs with only faces with five or more edges.
(I discovered today that this was already known by Alfred Kempe.) I wrote a progam to
investigate the kind of sequences on robes around certain graphs. The main
function for calculating this is given a number of points, a string
representing the graph, and a number of rotations that it should generate
sequences for. The string giving the graph uses letter starting from 'a'
to label the graph. If a sequence of letter is followed by an equal sign,
the function checks if the values for these point add up to zero modulo
three. If it is followed by a comma or at the end of the string the value
of the points modulo three is added. The values for which the function is
called are:
- 8 points, "abcdh= defgh= ab,bc,cde,ef,fg,gha", and 1 rotation.
- 4 points, "a,ab,bc,cd,d,dcba", and 6 rotations.
- 4 points, "a,abc,cd,d,dcb,ba", and 6 rotations.
- 6 points, "abcde= ab,bc,cd,def,f,fea", and 6 rotations.
- 6 points, "abde= abc,c,cbd,def,f,fea", and 3 rotations.
- 6 points, "abdf= abc,c,cbde,e,edf,fa", and 6 rotations.
- 6 points, "abef= abc,cd,d,dcbe,ef,fa", and 6 rotations.
- 6 points, "abef= abcd,d,dc,cbe,ef,fa", and 6 rotations.
The output generated by the program, in which each column represents
one way of patterns, is:
110112 * * ** * * * ** * * ** **
112221 * * * * * * * ***** **
112110 * * * * * * * ** * * * ** *
111222 * * * * * * * **** ** *
102102 * * * ** ** * * * * * *
102000 * * * * * * * * **
101010 ** * * * * * * * *
000102 * * * * * * * * * *
000000 * *
001020 * * * * ** * * **
012012 * * * ** ** * * * * * *
010002 * * * * * * * * * *
010101 * * * * * * ** * *
122211 * * * * * **** ** **
122022 * * * * * ** * * * ** **
101121 * * * * * * ** * * ** **
011211 * * * ** * * * * * ** **
121101 * * * * * * ** * * ** **
120012 * * * * ** ** *** ***
100212 ** * * * * ** *** ***
001212 ** * * ** ** *** ***
012120 ** * * ** * ** *** **
121200 ** * * ** ** ** *** *
121002 ** * * ** ** *** ***
120120 * * * ** * * * * ** *
100020 * * * * * * * * *
010200 * * * * * ** * *
110220 * * ** ** ** * * * ** * *
102201 * * ** ** ** * * * * * * *
011022 * ** ** ** * * * * * * **
111111 *************** *
This shows that there are many combinations of sequences that do meet the
requirement that there is at least one of the sequences can be contracted
in any possible way, but nevertheless do not contain one of the first
thirteen sequences for the two joined faces with five edges (and five
vertices).
Magnolia seeds
This morning, I discovered some berries on our
magnolia in the back of the garden, and I took a close-up picture. In the evening I took these, and one that Annabel found on the other side, inside. I peeled the three berries and
we put the black seeds inside a zip bag with some moist potting soil
according some
instructions we found on YouTube. We put the zip back in the shed in the
backgarden instead of the refrigerator because it will be about the same
temperature the coming months. From the description of the different magnolias,
I get the impression we have magnolia stellata.
This months interesting links
Home
| October 2013
| December 2013
| Random memories