In informatica, in particolare nella programmazione, una precondizione è una condizione o predicato che deve essere sempre vero prima dell'esecuzione di una sezione di codice o prima di un'operazione in una specifica formale. Se una precondizione viene violata, l'effetto prodotto dalla sezione di codice diviene indefinito e quindi potrebbe o non potrebbe fornire il risultato atteso. Problemi di sicurezza possono derivare da precondizioni incorrette. Solitamente le precondizioni sono incluse nella documentazione della sezione di codice che le richiede. Le precondizioni vengono a volte verificate usando delle asserzioni nel codice stesso, ed alcuni codici hanno specifici costruzioni sintattiche per fare ciò. Ad esempio: il fattoriale è definito solo per numeri interi maggiori o uguali a zero. Quindi, un programma per calcolare il fattoriale di un numero avrà le precondizioni che il numero sia intero e che sia maggiore o uguale a zero.