Quote from Kaias
Quote from Sacrieur
Quote from Wormer
Quote from Sacrieur
I found an application for logic gates in trigger-based AI... Effectively using flowcharts to determine action.
So XNOR has no application in a flowchart? And the topic says logic gates in SC =P. I figured I would just post on this thread rather than make another thread.
Perhaps it is that you don't quite understand what a logic gate is or how it operates. "Basic" trigger logic is far from the truth, since triggers run off of conditions/actions, they're a glorified modus ponens. The definition of flowchart specifically employs the use of analyzing data as its main function. Where there is analyzing, there are logic gates because this is the only way for computers to analyze data.
It is interesting to note, because a flowchart is simply a visual representation of logic. It has an input (or several) and an output (or several). The input runs through the logic gate and then arrives at an output. Represented by 0 or 1 (or false and true, respectively). We can apply this directly to our trigger system with the following method:
Logic has several different conditionals used in logic gates. I shall list them:
AND: conjunction (& or ∧)
OR: disjunction (∨)
NOT: negation (~ or ¬)
Using negations, we can construct inverses:
NAND: inverse conjunction [¬(A ∧ B)]
NOR: inverse disjunction [¬(A ∨ B)]
Additionally, there are two others, making use of the exclusive use of the word or (one or the other, but not both).
XNOR: inverse exclusive disjunction (A ≡ B)
XOR: exclusive disjunction [¬(A ≡ B)]
---
Now if we design a trigger system based on these seven logic gates, we can obtain output values in complex fashions. This is useful in the area of Trigger-based AI, where complex decisions must be made (and can be made) with logic. Draw up several triggers for each. More than 2 inputs require much, much more triggers, so we should avoid that scenario. If we look at the logic outputs of AND we see this:
A B | A ∧ B
1 1 | 1 1 1
1 0 | 1 0 0
0 1 | 0 0 1
0 0 | 0 0 0
This means we need only four triggers to get full functionality for every function. We avoid redundancy by adding markers. Values for As and Bs will be set by death counters. Additional death counters will be used to mark which function is running the data. By using switches, we run through our conditions first, and once a flag is set (which means conditions have been met) these run through the functions for which the operator flags are set, churning out an output affected by actions, which then also uses switches to avoid confusion with other triggers. This is essentially a rudimentary processor. We may speed up the process by creating multiple processing units, essentially making a multi-core processing system.
Still pointless or unrelated?
None.