import numpy as np


def converge_linear(d, x_init=1.0, alpha=0.01):
    k = 1.0  # slope
    m = 1.0  # intercept
    
    for _ in range(10000):
        y = k * x_init + m
        err = d - y
        k += alpha * err  # adjust slope
        m += alpha * err  # adjust intercept
        x_init += alpha * err  # adjust input
    
    return k, m, x_init

# Result: k*x + m ≈ d

k,m,x_init = converge_linear(11*7)

