Previous Up Next

Diary, June 2021



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


Wednesday, June 2, 2021

Book

At 17:12, I bought the book Monumenta 2011 written by Anish Kapoor and Jean de Loisy (in French and some English), edited by Jean de Loisy, and published by RMN Editions in 2011, ISBN:9782711858170, from charity shop Het Goed for € 1.50.


Thursday, June 3, 2021

OfferZen package

At the end of the afternoon, I received a package from OfferZen for the Make Event on June 24.

AGL: A Grammar Language

A former colleague pointed me to the virtual meetup AGL: when a regular expression is not enough about AGL: A Grammar Language by Dr. David H. Akehurst on the Strumenta Community: A Software Language Engineering community organized by Federico Tomassetti, the founder of Strumenta. The AGL Editor Demo is impressive with respect to syntax colouring and help. Althought the author claimed that the AGL parser is interpreted at runtine, i.e. has no generate parser step, it actually has a just-in-time parser generator, which constructs an 'automaton' that is used to parse the input. AGL uses a GLR based parsing algorithm. I understand that the construction of the 'automaton' is rather complex, especially if you do it on the fly in a lazy manner. I am using a much simpler approach in IParse, which interprets the grammar directly (except for some regrouping to support left-recursion). Whereas the AGL parser does not back-track over the input, IParse does back-track over the input, but still proves fast enough as a parser for small languages.


Sunday, June 6, 2021

Border poles

Since the first of June, the Netherlands is no longer a Hochinzidenzgebiet with respect to COVID-19, which means we can enter the country without having a recent test that shows we are not infected. Conny and I took the opportunity to continue our search for border poles: We found the following poles:


Tuesday, June 8, 2021

Product of directed graphs

I am thinking about a puzzle problem and want to find an algorith to solve a certain problem. I am going to make an attempt to formalize the problem. It is related to directed graphs where the vertices are labled with values from a fixed alphabet. Lets start defining the set of all directed graphs:
FiniteDirectedGraphs
= { { "V" : V, "E" : E }
  | V in FiniteSets and
    E subset { (v1, v2) | v1 in V and v2 in V } 
  }
To label the vertices, we first need to define the set of all functions over a given domain:
FiniteFunctionsForDomain(D in FiniteSets)
= { F | size F = size D }
  where F = { { d : c } | d in D and c in Any}      
With this we can define the set of all labled directed graphs:
LabledFiniteDirectedGraphs
= { { "G" : G, "L" : L }
  | G in FiniteDirectedGraphs and
    L in FiniteFunctionsForDomain(G."V")
  }
Now we can define a kind of product of two labled directed graphs, like:
Matching(G1 in LabledFiniteDirectedGraphs, 
         G2 in LabledFiniteDirectedGraphs)
= { "G" : 
     { "V" : { (v1,v2) 
             | v1 in G1."G"."V" and v2 in G2."G"."V" and
               G1."L".v1 = G2."L".v2
             }, 
       "E" : { ((v11,v12), (v21,v22))
             | (v11,v21) in G1."E" and (v12,v22) in G2."E"
             }
     },
    "L" : { (v1,v2) : G1."L".v1 } 
  } in LabledFiniteDirectedGraphs
I would like to define something as sequence equivalence, where the sequences of lables that can be produced by any walk over a labled directed graph is equal to that of another graph. First we define the set of all directed paths of a directed graph and with this we define the sequences:
DirectedPaths(G in DirectedGraphs)
= { (v[1], .., v[n])
  | ForEach i in NatNum
       (1 <= i and i < n implies (v[i],v[i+1]) in G."E")
  }
Sequences(G in LabledFiniteDirectedGraphs)
= { (G."L".v[1], .., G."L".v[n])
  | (v[1], .., v[n]) in DirectedPaths(G."G")
  }
Now we can define what it means that two graphs a sequence equivalent:
SequenceEquivalent(G1 in LabledFiniteDirectedGraphs, 
                   G2 in LabledFiniteDirectedGraphs)
= Sequences(G1) = Sequences(G2)
Now, one could argue that such a test is impossible to execute, because one would have to compare an infinite set of sequences, but I believe it is sufficient to test this for all sequences that are one longer than the largest number of vertices of one of the two graphs. Maybe, there are even beter ways to check the equivalence, for example, if one could construct a correspondance relationship between the two set of vertices and somehow prove that the graphs are isomorphic with respect to the lables of the vertices. The algorithm, I am looking for, is an algorithm that finds a smallest sequence equivalent labled directed graph of given labled direct graph, where smallest is defined by the number of vertices.

Vrijdijk

This afternoon, Conny and I walked along the dirt road Vrijdijk in Denekamp and which lies along the border with Germany. The name Vrijdijk (Dutch for free dike) refers to the fact that the Count of Bentheim and the Bishop of Utrecht at one point declared the area a no man's land that should be left untouched. We found the following border poles:


Wednesday, June 9, 2021

Correction

I realized I have made a mistake in the sequence equivalence definition. It should not be about finite sequences, but about all infinite sequences. And I believe it is sufficient for all cyclic directed paths. This results in the following definitions:
CyclicDirectedPaths(G in DirectedGraphs)
= { (v[1], .., v[n])
  | ForEach i in NatNum
       (1 <= i and i < n implies (v[i],v[i+1]) in G."E")
    and (v[n],v[1]) in G."E"
  }
Sequences(G in LabledFiniteDirectedGraphs)
= { (G."L".v[1], .., G."L".v[n])
  | (v[1], .., v[n]) in CyclicDirectedPaths(G."G")
  }
(I have to admit that I am still wrestling with the syntax and the semantics I am using in these specifications. The idea is that it should be close to some mathematical notations, but these notations are often hard to interpret. The equal sign in the above notation can both mean equality and definition depending on the context. Maybe it is better to use a more explicit syntax for definition using the keyword define and at. The same is true for the set notation with the vertical bar.) If a directed labled graph has vertices with no outgoing and/or no incoming directed edges, those vertices can be removed without affecting the sequence equivalence. Probably another technique to find a smaller but sequence equivalent graph is to find a mapping between vertices that can be joined together with their incoming and outgoing edges. Of course, the question is whether this always leads to a minimal solution. Another question is whether there always exists a unique minimal solution or not.


Thursday, June 10, 2021

Solar eclipse

At 12:22, Conny and I went outside to have a short look at the solar eclipse, which at our location was only a partial eclipse with about 17% cover around that time.


Saturday, June 12, 2021

Exhibitions

This afternoon, I went to have a look at the exhibitions at Concordia. I first watched the exhibition Ik ben Ik (Dutch for: I am I), which is aimed at children. But I still found it interesting. I was not so much interested in the exhibition upstairs. The exhibition André Smits: Artist in The World was held in the hallway. Both sides of the walls were filled with a drawing by André Smits, a traveling artist who takes pictures of artists. His website is called Artists in the World: Never Ending Art Trip. The wall also included names of local artists and one work from each of them. I saw a work by Willemijn Calis. I found the work by Wout Zweers quite interesting. It took me some time to figure out how he had made it: it is a kind of magic trick.


Sunday, June 13, 2021

Hunenborg

Conny and I visited Hunenborg, a ring walburg along the Almelo-Nordhorn Canal near Volthe in the municipality of Dinkelland in Overijssel. The whole consists of the wooded remains of a main castle and an outer castle that is barely visible. The high burg is an oval-shaped site of approximately 100 by 150 meters with a moat around it. On the outside of the moat is a small elevation, on the inside an earthen wall has been built. We parked the car on the North side of the canal and walked through the burg into a farm field. From this we walked a long a road back to the canal. On the way home, we also stopped near Oldenzaal to search for some Marke stones. At 13:08, we found the marke stone called 'Steen in het veld' (20.24-02). We also found out that the other marke stones in the area are not accessible.


Wednesday, June 16, 2021

30.2° Celsius

The temperature at Twenthe Airport went up to 30.2° Celsius, which breaks the previous record of 29.9° for the temperature on this date in 1966. The predicted temperature according to the prediction at the start of the day, was 29.4° Celsius. This was the first local tropical day of the year.


Thursday, June 17, 2021

33.6° Celsius

The temperature at Twenthe Airport went up to 33.6° Celsius, which breaks the previous record of 31.3° for the temperature on this date in 2002. The predicted temperature according to the prediction at the start of the day, was 34.0° Celsius. This was the first national tropical day of the year.


Thursday, June 24, 2021

Graduation presentation

This morning, Annabel gave her graduation presentation (online) for her Industrial Product Design major. She got an eight (on a scale of one to ten) for her graduation project, thesis, and presentation. She came up with a clever solution for an interesting engineering problem and I am proud of her achievement.

Self watering plant workshop

In the evening, I joined the self watering plant workshop organized by OfferZen Make in cooperation with TkkrLab. I had not done the preparation of the event. And I also had some problems interpretting the schematics in the documenation, but I managed to get the hardware setup working (which still needs some programming) and even build the Rubber Ducking Brick Set (by Tico Mini Bricks).


Friday, June 25, 2021

AKI MUPI route 2021

In the past week, I worked on finding a route to bike along all the MUPIss that contain a picture of a work by one of this years graduates of the AKI. I implemented the algorithm from last year in the TSP solver page using JavaScript. With this, I established a shortest route and from this shortest route, with some small modifications, I created a round trip using Google Earth along all the MUPIs where you can start at any place. (Open route in Google Maps.)


Saturday, June 26, 2021

AKI Finals 2021

This morning, I went to the AKI finals 2020/2021 exhibitions at the AKI building. I found the works of the following graduated students noteworthy (in the order I encountered them):

At 11:35, I bought the book Contrast: AKI 2020 Catalogue + AKI 2021 Catalogue edited by Johan Visser, written in Dutch and English published by AKI Academy of Art & Design on Tuesday, June 25, 2019, ISBN:9789075522419 for € 15.00.


Sunday, June 27, 2021

Visiting all MUPIs

Today, I biked the the route (in Google Maps) I created the day before yesterday. I followed the route by heart and I did not miss any MUPI. I came across two locations where the road was broken up and where I had to bike over the pavement.


Tuesday, June 29, 2021

Self watering plant

This weekend, I already installed the self watering plant in the windowsill of the kitchen and I saw how it pumped water because the tube connecting the glass with water and the plant was filled with water. When I refilled the glass, I noticed that the plant pot was overflowing due to the communicating vessels effect. I used to tube to drain the water and placed the put a little higher than the glass, such that it could not happen again. Since than, I have not seen any evidence of the pomp working again. I also installed a 24 hours mechanical electric timer switch to power the device only between seven and eight in the morning. The Arduino code I am using, boils down to:

int secToWait = 0;

void setup() {
  pinMode(A0, INPUT);
  pinMode(D7, OUTPUT);
  pinMode(D6, OUTPUT);
}

void loop() {
  if (--secToWait <= 0)
  {
    secToWait = SEC_TO_WAIT;
    
    digitalWrite(D7, HIGH);
    delay(100);
    int analogValue = analogRead(A0);
    digitalWrite(D7, LOW);
    
    if (analogValue > 500)
    {
      digitalWrite(D6, HIGH);
      delay(1000);
      digitalWrite(D6, LOW);
    }
  }
  delay(900);
}

Some little basil sprouts already have appeared.


Wednesday, June 30, 2021

Book

I recieved the book Commissioned: Sixty years percentage for art programme at the Dutch government building agency edited by Hans van den Ban, written in English, published by Sun Uitgeverij in November 2011, translated by Peter Mason from In Opdracht, ISBN:9789461051639, which I had bought on Monday, June 28, 2021 at 18:08 from GMSbooks for € 11.00.


This months interesting links


Home | May 2021 | July 2020