# sql A+B

SELECT A + B

• A
• B

• A + B

## Neuron type

Best algorithm has been found - locked

## Patterns

Pattern Input Output
1.
 A: 1 B: null
 A + B: null
2.
 A: null B: 4
 A + B: null
3.
 A: null B: null
 A + B: null
4.
 A: 7 B: 3
 A + B: 10
5.
 A: 20 B: 1
 A + B: 21
6.
 A: -5 B: 5
 A + B: 0
7.
 A: 1 B: 0
 A + B: 1
8.
 A: 0 B: 1
 A + B: 1

## Applicable neurons

• Plus (x + y)
• OR
• AND
• IF
• a = b
• Implication
• IF a=b THEN c ELSE d
• IF (1) THEN a ELSE b
• null
• equilateral polygon - Perimeter
• Distance between two points (3d)
• √¯(x² - y²)
• Connect - two words (with space)
• (a, b]
• character !
• Hlavné mesto
• is even?

## Algorithm

### Test

```/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 8:
*
* @return {Array}
*/
function neuron508()
{
return [8];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character l:
*
* @return {Array}
*/
function neuron644()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron500();
outputs[1] = arr[0];

arr = neuron508();
outputs[2] = arr[0];

arr = neuron638(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* 0:
*
* @return {Array}
*/
function neuron500()
{
return [0];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character n:
*
* @return {Array}
*/
function neuron782()
{
var outputs = [];

arr = neuron500();
outputs[0] = arr[0];

arr = neuron501();
outputs[1] = arr[0];

arr = neuron638(outputs[1], outputs[1], outputs[0]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* 1:
*
* @return {Array}
*/
function neuron501()
{
return [1];
}

/**
* 7:
*
* @return {Array}
*/
function neuron507()
{
return [7];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - three inputs: Connect stringA + stringB + stringC
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @return {Array}
*/
function neuron564(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron520(outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron520(outputs[0], outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* Ascii code into character:
*
* @param x1 ascii code
* @return {Array}
*/
function neuron585(x1)
{
return [String.fromCharCode(x1)];
}

/**
* 3 digits of ascii code into character: connect 3 digits to one ascii number and change it to character
*
* @param x1 1. digit
* @param x2 2. digit
* @param x3 3. digit
* @return {Array}
*/
function neuron638(x1, x2, x3)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;

arr = neuron564(outputs[0], outputs[1], outputs[2]);
outputs[3] = arr[0];

arr = neuron585(outputs[3]);
outputs[4] = arr[0];

return[outputs[4]];
}

/**
* character u:
*
* @return {Array}
*/
function neuron866()
{
var outputs = [];

arr = neuron501();
outputs[0] = arr[0];

arr = neuron507();
outputs[1] = arr[0];

arr = neuron638(outputs[0], outputs[0], outputs[1]);
outputs[2] = arr[0];

return[outputs[2]];
}

/**
* Connect - two inputs:
*
* @param x1 Variable A
* @param x2 Variable B
* @return {Array}
*/
function neuron520(x1, x2)
{
return [x1.toString()+x2.toString()];
}

/**
* Connect - four inputs:
*
* @param x1 string A
* @param x2 string B
* @param x3 string C
* @param x4 string D
* @return {Array}
*/
function neuron565(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron520(outputs[2], outputs[3]);
outputs[4] = arr[0];

arr = neuron520(outputs[1], outputs[4]);
outputs[5] = arr[0];

arr = neuron520(outputs[0], outputs[5]);
outputs[6] = arr[0];

return[outputs[6]];
}

/**
* null:
*
* @return {Array}
*/
function neuron865()
{
var outputs = [];

arr = neuron644();
outputs[0] = arr[0];

arr = neuron782();
outputs[1] = arr[0];

arr = neuron866();
outputs[2] = arr[0];

arr = neuron565(outputs[1], outputs[2], outputs[0], outputs[0]);
outputs[3] = arr[0];

return[outputs[3]];
}

/**
* Plus (x + y): The addition of two whole numbers is the total amount of those quantities combined.
*
* @param x1 first number
* @param x2 second number
* @return {Array}
*/
function neuron1(x1, x2)
{
math.config({number: 'BigNumber', precision: 64}); return [math.eval(Number(x1) + '+'+Number(x2)).toString()];
}

/**
* a = b: IF a=b THEN 1 ELSE 0;
*
* @param x1 a
* @param x2 b
* @return {Array}
*/
function neuron591(x1, x2)
{
return [(x1 == x2) ? 1 : 0];
}

/**
* IF: IF a THEN b ELSE c;
*
* @param x1 condition (1/0)
* @param x2 variable for 1
* @param x3 variable for 0
* @return {Array}
*/
function neuron579(x1, x2, x3)
{
return [(x1) ? x2 : x3];
}

/**
* IF a=b THEN c ELSE d:
*
* @param x1 a
* @param x2 b
* @param x3 c
* @param x4 d
* @return {Array}
*/
function neuron724(x1, x2, x3, x4)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;
outputs[2] = x3;
outputs[3] = x4;

arr = neuron591(outputs[1], outputs[0]);
outputs[4] = arr[0];

arr = neuron579(outputs[4], outputs[2], outputs[3]);
outputs[5] = arr[0];

return[outputs[5]];
}

/**
* sql A+B: SELECT A + B
*
* @param x1 A
* @param x2 B
* @return {Array}
*/
function neuron867(x1, x2)
{
var outputs = [];
outputs[0] = x1;
outputs[1] = x2;

arr = neuron865();
outputs[2] = arr[0];

arr = neuron1(outputs[2], outputs[1]);
outputs[3] = arr[0];

arr = neuron1(outputs[0], outputs[1]);
outputs[4] = arr[0];

arr = neuron724(outputs[4], outputs[3], outputs[2], outputs[4]);
outputs[5] = arr[0];

return[outputs[5]];
}

```