blockchain -> linking entries with each other and signing them with cryptographics "referencing the parent entry" so to say
mining -> calculating points along a curve inside a graph utilizing the p != np to increase the time it takes to calculate the next valid hash but verifying it easily
decentral -> not having an owning party but distributed between all users of the currency
smart contracts -> define conditions that allow you to enter your value into the chain / ledger.
that's it at least to my knowledge. The rest is implementation detail. I can give you the math behind bitcoins.
but blockchain != mining != smart contracts
a blockchain is just some interlinked entries who get "crypto-linked" so you cannot forge them.