https://codegolf.stackexchange.com/questions/211756/what-logic-gates-work-given-the-input working on this challenge, thinking something along the lines of
'AND' 'NAND' 'OR' 'NOR' 'XOR' 'XNOR'/⍨{c=⍎⍕a,⍵,b}¨'∧⍲∨⍱≠='
and (a b c)←⎕
Not sure if there's clever golfing for the strings or clever golfing for other stuff
@dzaima Okay, Java doesn't like to vectorize max and min I guess. Those results are about even with Dyalog but if you look at a longer index vector that doesn't jump around in cache like 4e5+↕1e4 (to force 4-byte ints) then Dyalog is nearly twice as fast.
@dzaima Did you try the Collections min() and max() methods?
@Razetime To generate 'AND' 'NAND' 'OR' 'NOR' 'XOR' 'XNOR'. dzaima suggested using 'AND' 'OR' 'XOR' and adding N to the front, but XNOR doesn't follow the pattern. If you started with 'NAND' 'NOR' 'XNOR' instead you might get it to work, although the two Ns in NAND are troublesome.
@dzaima This answer converts an array to a list, but you're right that it's probably not fast. The next answer mentions summaryStatistics as something with better performance.