**Bisubjunksjon** (også *ekvijunksjon*, *ekvivalens* eller *biimplikasjon*) er en sannhetsfunksjon i setningslogikken (latin *bis* = «to ganger», *sub* = «under», *aequus* = «lik», *junctio* = *implicatio* = «forbindelse», *valere* = «å gjelde»).
Bisubjunksjonen av to utsagn er sann **hvis og bare hvis** *begge* eller *ingen* av disse utsagnene er sanne.
Den symbolske skrivemåten for bisubjunksjonen av to utsagn **A** og **B** er

{\displaystyle \mathbf {A} \leftrightarrow \mathbf {B} }
og kan uttales som følger:

* «hvis og bare hvis A, så B,»
* «om og bare om A, så B,»
* «av A følger B og vice versa,»
* «A er tilstrekkelig og nødvendig for B.»

I noen programmeringsspråk eller andre sammenhenger der særtegn ikke kan brukes, skrives også «XNOR» eller likhetstegn («=») istedenfor «↔».
«XNOR» er avledet av det engelske uttrykket *exclusive nor* (i og med at bisubjunksjonen er negasjonen av en «eksklusiv eller»).

**Ekvivalens** brukes til tider synonymt med bisubjunksjon, men begrepet er formelt sett kun forbeholdt *bisubjunksjoner som er sanne*.
Symbolet for ekvivalens er «{\displaystyle \Leftrightarrow }» eller «≡» mot bisubjunksjonens «{\displaystyle \leftrightarrow }» og «=».

Av og til omskrives også A ↔ B som «hviss A, så B» (til dels «omm A, så B»).
Skrivemåten «hviss» følger det engelske forbildet *iff* (for *if and only if*), men bør brukes med forsiktighet, siden det lett kan forveksles med «hvis», som har en annen betydning:
Forskjellen mellom biimplikasjonen («hviss») og implikasjonen («hvis») er at den sistnevnte også er sann hvis bare konklusjonen er sann, men ikke premissen.
I motsetning til implikasjonen er derfor biimplikasjonen kommutativ: «hvis og bare hvis A, så B» er ekvivalent med «hvis og bare hvis B, så A», eller symbolsk:

{\displaystyle (\mathbf {A} \leftrightarrow \mathbf {B} )\Leftrightarrow (\mathbf {B} \leftrightarrow \mathbf {A} )}.
Legg merke til at «{\displaystyle \leftrightarrow }» og «{\displaystyle \Leftrightarrow }» nettopp ble brukt til å uttrykke ulike ting:
Den sistnevnte symbolet betegnet en *sann ekvivalens* mellom to utsagn.
De to *enkeltutsagnene* kan derimot godt være falske, derfor brukes «↔» i disse.

Den eksklusive disjunksjonen kan uttrykkes gjennom andre sannhetsfunksjoner:

* som «hvis A, så B, og hvis B, så A», {\displaystyle (\mathbf {A} \leftrightarrow \mathbf {B} )\Leftrightarrow ((\mathbf {A} \rightarrow \mathbf {B} )\land (\mathbf {B} \rightarrow \mathbf {A} ))};
* som negasjon av en eksklusiv disjunksjon, {\displaystyle (\mathbf {A} \leftrightarrow \mathbf {B} )\Leftrightarrow \neg (\mathbf {A} }  {\displaystyle \mathbf {B} )}.

|  |
| --- |
| **Setningslogikk** |
| **Sannhetstabell** (0 = usant, 1 = sant):

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 

|  |  |
| --- | --- |
| **A** | **B** |

 | 

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| usant | A *og* B | A, *menikke* B | A | *ikke* A,*men* B | B | *enten* A*eller* B | A *eller* B | *verken* A*eller* B | *hvi**ss*** A,*så* B | *ikke* B | A *hvis* B | *ikke* A | *hvis* A,*så* B | A *NAND* B | sant |

 |
| 

|  |  |
| --- | --- |
| **0011** | **0101** |

 | 

|  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |

 |

 |
| **Sannhetsfunksjoner**: abjunksjon | adjunksjon | alternativ | antivalens | bisubjunksjon | disjunksjon | eksklusjon | ekvijunksjon | ekvivalens | implikasjon | injunksjon | konjunksjon | kontrajunksjon | kontravalens | negasjon | subjunksjon |