Itseinkompatibiliteetti
Itseinkompatibiliteetti eli itsemartous on osalla kasveista tavattava mekasnismi, joka estää siitepölyhiukkasta hedelmöittämästä saman kasviyksilönemin munasolua tai itsepölytyksen seurauksena hedelmöittyneen munasolun kehittymisen siemeneksi. Itsekompatibiliteetin ilmeneminen on jaettu vanhastaan kolmeen erilaiseen mekanismiin, joskin tämä kolmijako on sittemmin kyseenalaistettu, ja mahdollisia erilaisia mekanismeja saattaa olla enemmän. Itseinkompatibiliteetin on todettu vaikuttavan useilla eri sukuihin ja heimoihin kuuluvilla kasvilajeilla.
Homomorfisessa gametofyyttisessä itseinkompatibiliteetissä itsepölytyksen estomekanismi perustuu yhteen geenilokukseen, jonka geenistä on samassa kasvipopulaatiossa useita erilaisia alleeleja. Populaation kasviyksilöissä on siis kyseisessä geenilokuksessa jotkin kaksi alleelia, jolloin kasvin heteiden tuottamiin haploidisiin siitepölyhiukkasiin tulee jompikumpi alleeliparin alleeleista. Siitepölyn päätyessä emin luotille sellaisessa kasvissa, jolla on perimässään kyseisestä geenistä sama alleeli kuin siitepölyhiukkasessa, siiteputken kasvaminen emin munasolulle estetään ja hedelmöitystä ei tapahdu. Mikäli siitepölyhiukkanen päätyy kyseisestä geenistä erilaiset alleelit omaavan kasvin luotille, voi siiteputki kasvaa normaalisti ja hedelmöittää munasolun.
Homomorfisen sporofyyttisen itseinkompatibiliteetin itsepölytyksen estomekanismi perustuu homomorfisen gametofyyttisen itseinkompatibiliteetin tapaan yhteen geenilokukseen, jonka geeneistä on kasvipopulaatiossa useita eri alleeleja, ja populaation kasviyksilöissä on kyseisessä geenilokuksessa jotkin kaksi alleelia. Kuitenkin toisin kuin gametofyyttisessä itseinkompatibiliteetissä, sporofyyttisessä itseinkompatibiliteetissä jokaisessa haploidissa siitepölyhiukkasessa on jokin kyseisen geenin alleeli sekä sen emokasvissa olleen toisen alleelin vastintekijää, jolloin se saa aikaan saman reaktion kuin jos siitepölyhiukkasessa olisi molemmat sen emokasvin kyseisen geenin alleelit. Näin ollen, mikäli siitepölyhiukkanen päätyy emin luotille sellaisessa kasvissa, jonka perimässä on jompikumpi siitepölyhiukkasen emokasvin kyseisen geenin alleeleista, siiteputken kasvaminen munasolulle estetään, eikä hedelmöitystä tapahdu. Jotta siitepölyhiukkanen voisi hedelmöittää emin sikiäimessä olevan munasolun, tulee munasolun omaavan kasvin olla sellainen, jolla ei ole perimässään kumpaakaan siitepölyhiukkasen emokasvin alleeleja kyseisestä geenilokuksesta.
Heteromorfisessa itseinkompatibiliteetissä itsepölytyksen estomekanismi perustuu yhteen geenilokukseen, jonka geenistä on populaatiossa kaksi alleelia. Alleeleista toinen on dominoiva ja toinen on resessiivinen. Esikoilla ("Primula") emien vartalon pituus riippuu kyseisen geenilokuksen alleeliyhdistelmästä. Homotsygoottisen resessiivisen alleeliparin omaavien kukkien emit ovat pitkävartaloisia ja heterotsygoottisen alleeliparin omaavien kukkien emit lyhytvartaloisia. Itsekompatibiliteettimekanismi estää homotsygoottisen resessiivisen alleeliparin kukasta peräisin olevaa siitepölyä hedelmöittämästä toista homotsygoottisen resessiivisen alleeliparin omaavan kukan emin munasolua ja vastaavasti heterotsygoottisen alleeliparin kukasta peräisin olevaa siitepölyä hedelmöittämästä toisen heterotsygoottisen kukan emin munasolua. Vaikka esikoilla tämä itseinkompatibiliteettimekanismi liittyykin emien heterostyliaan eli emien eripituisuuteen, ei tämä mekanismi välttämättä aina liity siihen.
Vanhastaan esitettyjen kolmen itseinkompatibiliteettimekanismin lisäksi on esitetty myös muita mekanismeja. Eräs tällainen mekanismi on niin sanottu myöhäinen itseinkompatibiliteetti, jossa siitepölyhiukkanen pääsee kasvattamaan siiteputken ja hedelmöittämään emin sikiäimessä olevan munasolun, mutta hedelmöittyneestä munasolusta ei kehitykään siementä. Tällainen mekanismi on aikoinaan todettu kaakaopuulla ("Theobroma cacao"), mutta myöhemmin sama mekanismi on havaittu myös nystysarviaaloella ("Gasteria carinata" var. "verrucosa"), sinimailasella ("Medicago sativa") ja keltamaitteella ("Lotus corniculatus").