Kleroterion

 Kleroterion was the name of the machine that the ancient Greeks used to randomly choose public charges, juries and the rest of representatives.

Currently, technology allows the implementation of an impregnable computer system that allows the random selection of all public positions in a State such as Spain. This machine will not only randomly elect the positions but will also allow the members of the General Assembly of Citizens to vote the acceptance of all the regulations that affect each one of them. The blockchain technology allows not only to maintain the anonymity of these votes but also ensures the impossibility of falsifying or manipulating the random election of public officials. Demarquía y Libertad includes in its statutes an algorithm that will allow to choose those positions ensuring that in any case the equiprobability in the election process varies by not more than one trillionth. We present this algorithm below:


ESTATUTOS DEL PARTIDO POLÍTICO DEMARQUIA Y LIBERTAD

ANEXO I

Algoritmo de extracción aleatoria de la maquina Kleroterion

 

Es necesario distinguir si la asamblea o elección es presencial o telemática. En el primer caso el secretario de la mesa irá pulsando la tecla “Enter” del teclado del ordenador cada vez que un participante extraiga un boleto con su número de participante de la urna, siendo el ordenador el que por medio de un sistema acústico confirme la pulsación y entonces el secretario autorizará al siguiente participante a extraer otro boleto. En el segundo caso esa pulsación la hará el participante en su propio terminal al confirmar la inscripción en el proceso de elección obteniendo en ese momento su número de participante del sistema correspondiente al orden de la pulsación entre el total de pulsaciones; este proceso será controlado a nivel central y compartido con todos los terminales. En ambos casos, tanto el ordenador de la mesa de la asamblea como el terminal de cada participante, al confirmar por medio de la pulsación en la tecla “Enter” el ordenador extraerá el dígito correspondiente a la milésima de segundo según el reloj interno del ordenador o terminal del instante en que fue pulsada la tecla. Se irá formando de esta forma una serie de dígitos que será igual al número de participantes N, llamémosla Serie A. Esta serie de N dígitos será compartida vía tecnología blockchain con todos los terminales de cada uno de los afiliados del partido. Esto asegurará que no será manipulada en ningún caso. Terminado el proceso de registro de todos los candidatos, el presidente de la mesa pulsará la tecla habilitada para ello de forma que elija un número entero aleatorio entre 1 y N, ambos incluidos, con semilla el número de milisegundos desde el inicio de la sesión del ordenador, llamémosle a. Este número servirá para elegir un dígito dentro de la serie indicada anteriormente. A partir del número N se obtendrá su logaritmo en base 10 y se redondeará al alza. De esta forma obtenemos un nuevo número n = INT(log(N))+MIN(N,12), donde la función INT extrae la parte entera de log(N), el segundo sumando nos permite asegurar que la diferencia de las probabilidades entre dos candidatos no será superior a una billonésima. Este número n será la cantidad de dígitos a extraer de la serie indicada con anterioridad a partir del número a. Obtendremos de esta forma una serie de n números, Serie B. Al llegar al final de la Serie A, se continuaría la extracción con los primeros dígitos de la serie. Este número de n cifras que llamaremos b se dividirá entre 10n y obtendremos un número menor de 1 que multiplicado por N y redondeado de la misma forma que obtuvimos n, nos dará el candidato elegido A:

 

A = INT(N*(b/10n))+1

 

Este número A será el número de boleto elegido.