> For the complete documentation index, see [llms.txt](https://renownedgames.gitbook.io/ai-tree/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://renownedgames.gitbook.io/ai-tree/nodes/tasks/math/bool-operator.md).

# Bool Operator

Node description and basic instructions

### Description

Massive node to operation with bool values and store operation result.&#x20;

**To create it**, right-click in the editor and select <mark style="color:purple;">Create Node/Tasks/Math/Bool Operator</mark>

This task node has a number of fields, that are highlighted in picture below.

<figure><img src="https://2203000093-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FGOxTM7Aj9oiVaIINrEkE%2Fuploads%2FUwTpoMQ3G8QsJMJ9F5Zn%2Fimage.png?alt=media&amp;token=421a2098-3ad9-4d1d-bc55-8500c066c77a" alt=""><figcaption></figcaption></figure>

### Fields

| Name              | Description                             |
| ----------------- | --------------------------------------- |
| Node Name         | Name of node.                           |
| Ignore About Self | Whether node ignores abort self or not. |
| Bool 1            | First key of bool.                      |
| Bool 2            | Second key of bool.                     |
| Store Result      | Key to store operation result.          |
| Operation         | Logic Operator                          |

### Logic Operators

* **AND** - The conditional logical AND operator `&&`, also known as the "short-circuiting" logical AND operator, computes the logical AND of its operands. The result of `x && y` is `true` if both `x` and `y` evaluate to `true`. Otherwise, the result is `false`. If `x` evaluates to `false`, `y` isn't evaluated.
* **OR** - The conditional logical OR operator `||`, also known as the "short-circuiting" logical OR operator, computes the logical OR of its operands. The result of `x || y` is `true` if either `x` or `y` evaluates to `true`. Otherwise, the result is `false`. If `x` evaluates to `true`, `y` isn't evaluated.
* **NAND** - The conditional logical NAND operator `!(&&)` for two conditions (A and B) is `true` as long as either condition is true, or none of the conditions is true; and it is `false` if **both** conditions are true.
* **XOR** - The inequality operator `!=` returns `true` if its operands aren't equal, `false` otherwise. For the operands of the [built-in types](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/built-in-types), the expression `x != y` produces the same result as the expression `!(x == y)`.
