Difference between revisions of "And"
(Created page with "{{BuiltinAnd∧}} is a dyadic boolean function which tests if both arguments are true: it returns 1 if both are 1 and 0 if one or both are 0. It represents the wi...") 
m 

Line 1:  Line 1:  
−  {{BuiltinAnd∧}} is a [[dyadic]] [[boolean function]] which tests if both arguments are true: it returns 1 if both are 1 and 0 if one or both are 0. It represents the [[wikipedia:logical conjunctionlogical conjunction]] in Boolean logic.  +  {{BuiltinAnd∧}} is a [[dyadic]] [[scalar functionscalar]] [[boolean function]] which tests if both arguments are true: it returns 1 if both are 1 and 0 if one or both are 0. It represents the [[wikipedia:logical conjunctionlogical conjunction]] in Boolean logic. 
{class=wikitable  {class=wikitable  
−  !<source lang=apl inline>  +  !<source lang=apl inline>∧</source>!!<source lang=apl inline>0</source>!!<source lang=apl inline>1</source> 
    
!<source lang=apl inline>0</source>  !<source lang=apl inline>0</source> 
Revision as of 07:45, 29 May 2020
∧

And (∧
) is a dyadic scalar boolean function which tests if both arguments are true: it returns 1 if both are 1 and 0 if one or both are 0. It represents the logical conjunction in Boolean logic.
∧ 
0 
1


0

0 
0

1

0 
1

Examples
The following shows all possible combinations of inputs as a Boolean function.
0 0 1 1 ∧ 0 1 0 1
0 0 0 1
Extended definition
Many APL implementations extend this function to nonBoolean arguments. In this case, this function behaves as Least Common Multiple or LCM. For positive integer arguments, it is defined as the smallest positive number which is divisible by both numbers. If one of the arguments is zero, the LCM function returns zero. While the mathematical definition of LCM does not cover nonintegers, some implementations accept them as arguments, returning a value which, when divided by both arguments, gives integers (or Gaussian integers, when given complex numbers).
∘.∧⍨ 0,⍳10
0 0 0 0 0 0 0 0 0 0 0
0 1 2 3 4 5 6 7 8 9 10
0 2 2 6 4 10 6 14 8 18 10
0 3 6 3 12 15 6 21 24 9 30
0 4 4 12 4 20 12 28 8 36 20
0 5 10 15 20 5 30 35 40 45 10
0 6 6 6 12 30 6 42 24 18 30
0 7 14 21 28 35 42 7 56 63 70
0 8 8 24 8 40 24 56 8 72 40
0 9 18 9 36 45 18 63 72 9 90
0 10 10 30 20 10 30 70 40 90 10
0.9∧25÷6
112.5
112.5÷0.9(25÷6)
125 27
2J2∧3J1
6J2
6J2÷2J2 3J1
2J¯1 2