1. I think you are write on the SVD decomposition :)
2. I also think you are write about the soft margin SVM. I ran the following R code:
library(e1071)
C <- 0.2
a <- 2
x1s <- c(.5,1,1,2,3,3.5, 1,3.5,4,5,5.5,6)
x2s <- c(3.5,1,2.5,2,1,1.2, 5.8,3,4,5,4,1)
ys <- c(rep(+1,6), rep(-1,6))
my.data <- data.frame(x1=x1s, x2=x2s, type=as.factor(ys))
svm.model <- svm(type ~ ., data=my.data, type='C-classification', kernel='linear', cost=C, scale=FALSE)
# get parameters of hiperplane
w <- t(svm.model$coefs) %*% svm.model$SV
my.data$x1 <- my.data$x1 * a
my.data$x2 <- my.data$x2 * a
svm.model <- svm(type ~ ., data=my.data, type='C-classification', kernel='linear', cost=C, scale=FALSE)
# get parameters of hiperplane
w_new <- t(svm.model$coefs) %*% svm.model$SV
print(w)
print(w_new)
The results are:
> print(w)
x1 x2
[1,] -0.6694118 -0.677647
> print(w_new)
x1 x2
[1,] -0.4212334 -0.5267132
So w_new is not w / a.
However if I set the cost to 1e+10, w_new is almost exactly w / a, meaning that on hard margin there is no change of classification but in soft margin there is.