Coggle requires JavaScript to display documents.
{Pre Q: <predicado>}
{Pos R: <predicado>}
{Pre Q, Pos R}
{falso}S{R}
{Q}S{falso}
[Q ≡ falso]
[P ⇒ Q]
{Q}S{R}
{P}S{R}
[R ⇒ P]
{Q}S{P}
{Q}S{R₁}
{Q}S{R₂}
{Q}S{R₁ ∧ R₂}
{Q₁}S{R}
{Q₂}S{R}
{Q₁ ∨ Q₂}S{R}
n
T(n)
oᵢ
i
T(n) = an² + bn + c
1000n
0.001n²
n²
2ⁿ
esta_ordenado
ultimo_no_ordenado
f(n) = O(g(n))
∃ c > 0, n₀ > 0
f(n) ≤ c * g(n)
n > n₀
n = O(n²)
10n³ = O(n³)
f(n) = Ω(g(n))
f(n) ≥ c * g(n)
n² = Ω(log₂n)
0.001n³ = Ω(n³)
f(n) = Θ(g(n))
an + b = Θ(n)
an² + bn + c = Θ(n²)
while
wp
true
while <condición_B> do <S_cuerpo>
{Q_inicial} <inicialización>; while B do S_cuerpo endwhile {R_final}
{Q_inicial} <inicialización> {P}
{P ∧ B} S_cuerpo {P}
t
{P ∧ B ∧ t=T_actual} S_cuerpo {t < T_actual}
B
[P ∧ B ⇒ t ≥ T_min]
[ (P ∧ ¬B) ⇒ R_final ]
P: suma = Σ(k=1 hasta i-1) ∧ 1 ≤ i ≤ n+1
t: (n+1) - i
P: a = F_i ∧ b = F_(i+1) ∧ 0 ≤ i ≤ n
t: n - i
P: 2^(k-1) ≤ n
t: n - 2^k
{Q_dada} S {R}
[Q_dada ⇒ wp(S,R)]
skip
wp(skip, R) = R
x := E
wp(x := E, R) = R[E/x]
if C then S₁ else S₂
wp(if C then S₁ else S₂, R) = (C ⇒ wp(S₁, R)) ∧ (¬C ⇒ wp(S₂, R))
S₁; S₂
wp(S₁; S₂, R) = wp(S₁, wp(S₂, R))
ejemplo_2
ejemplo_3
ejemplo_4
ejemplo_5
ejemplo_6