SSpectrumGorse
Środowisko programowania z AI

Całkowite wielomiany charakterystyczne

Zwróć malejące współczynniki det(xI−A) dla kwadratowej macierzy całkowitej rzędu od zera do sześciu o elementach z modułem do 1000.

● ● ●SpectrumGorse●
Sposoby pracy · Całkowite wielomiany charakterystyczne ×
def characteristic_polynomial(matrix):
    if type(matrix) not in (list, tuple) or len(matrix) > 6:
        raise ValueError("charpoly.size")
    n = len(matrix)
    if any(type(row) not in (list, tuple) or len(row) != n or any(type(v) is not int or abs(v) > 1000 for v in row) for row in matrix):
        raise ValueError("charpoly.entry")
    block = [[int(i == j) for j in range(n)] for i in range(n)]
    coefficients = [1]
    for degree in range(1, n+1):
        product = [[sum(matrix[i][k]*block[k][j] for k in range(n)) for j in range(n)] for i in range(n)]
        trace = sum(product[i][i] for i in range(n))
        coefficient = -trace // degree
        coefficients.append(coefficient)
        block = [[product[i][j] + (coefficient if i == j else 0) for j in range(n)] for i in range(n)]
    return coefficients
✳Zwróć malejące współczynniki det(xI−A) dla kwadratowej macierzy całkowitej rzędu od zera do sześciu o elementach z modułem do 1000.
✓ ZmianySprawdź przed zastosowaniem ↗
Ilustracja środowiska
Projekt
Sprawdź pustą macierz i powtórzone wartości własne, odrzucając nierówne wiersze i wartości logiczne bez przybliżania pierwiastków.
Sprawdź przed zastosowaniem
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
Modele
Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.
Sposoby pracy

Całkowite wielomiany charakterystyczne

Sposoby pracy ↗
Sposoby pracy
def characteristic_polynomial(matrix):
    if type(matrix) not in (list, tuple) or len(matrix) > 6:
        raise ValueError("charpoly.size")
    n = len(matrix)
    if any(type(row) not in (list, tuple) or len(row) != n or any(type(v) is not int or abs(v) > 1000 for v in row) for row in matrix):
        raise ValueError("charpoly.entry")
    block = [[int(i == j) for j in range(n)] for i in range(n)]
    coefficients = [1]
    for degree in range(1, n+1):
        product = [[sum(matrix[i][k]*block[k][j] for k in range(n)) for j in range(n)] for i in range(n)]
        trace = sum(product[i][i] for i in range(n))
        coefficient = -trace // degree
        coefficients.append(coefficient)
        block = [[product[i][j] + (coefficient if i == j else 0) for j in range(n)] for i in range(n)]
    return coefficients
Środowisko programowania z AI

Oceń kod matematyczny w kontekście aplikacji

Zapis matematyczny może sprawiać wrażenie, że implementacja jest gotowa, zanim zbadano jej kontrakt programistyczny. SpectrumGorse to środowisko programowania z AI dla Windows do oceny obu tych aspektów. Otwórz projekt i poproś podłączony model o ustalenie akceptowanych danych wejściowych, oczekiwanej reprezentacji wyniku i obsługi błędów przed zaproponowaniem zmian obliczenia.

Konkretnym zadaniem może być przegląd procedury wyznaczającej wielomian charakterystyczny małych macierzy całkowitoliczbowych. Podaj kod wywołujący i niezależnie znane przypadki testowe współczynników, a następnie poproś asystenta o wyjaśnianie proponowanych zmian w tych kategoriach. Oddziel obliczanie współczynników od innych operacji, które aplikacja może wykonywać później, aby przegląd nie rozszerzył się niepostrzeżenie na wymianę solvera numerycznego.

Sprawdzaj reprezentację równie dokładnie jak arytmetykę. Uruchom testy projektu dla pustej macierzy, jeśli jest obsługiwana, prostych macierzy diagonalnych i odrzucanych danych niekwadratowych. Sprawdź kolejność współczynników i konwencje znaków w kodzie odbierającym wynik oraz każdą wprowadzoną konwersję liczbową. Odpowiedź z wiarygodnie wyglądającymi współczynnikami nie wystarcza, jeśli kod wywołujący inaczej interpretuje ich kolejność lub wymaga dokładnych wyników całkowitych.

SpectrumGorse obsługuje punkty końcowe zgodne z OpenAI oraz Anthropic do łączenia z modelami. Wybierz model AI bez cenzury tam, gdzie oferuje go Twoja usługa; ograniczenia i narzędzia określa ta konfiguracja. Rozmowa pomaga wyjaśnić proponowany kod; niezależne przypadki testowe i kontrole aplikacji określają, czy jest odpowiedni.

Ocena poprawki dokładnego obliczenia

Co podać oprócz przykładowej macierzy?

Uwzględnij oczekiwaną kolejność współczynników, konwencję znaków i kod wywołujący korzystający z wyniku. Pokaż prawidłowe wymiary i typy elementów. Szczegóły te pozwalają asystentowi ocenić zgodność oprogramowania, a nie tylko znajomość wyrażenia matematycznego.

Czy współczynniki można sprawdzać tą samą implementacją?

Byłby to słaby niezależny dowód. Użyj prostych macierzy ze znanymi wynikami lub innej uzasadnionej kontroli w projekcie. Wyjaśnij sposób uzyskania oczekiwanych wartości, aby przegląd pozwalał odróżnić wspólny błąd od rzeczywistej zgodności.

Czy procedura wielomianowa powinna też znajdować pierwiastki?

Tylko jeśli jest to oddzielne wymaganie. Dokładne obliczanie współczynników i numeryczne znajdowanie pierwiastków mają różne kontrakty. Zachowaj zakres obecnej poprawki, chyba że aplikacja jawnie potrzebuje obu operacji i określono użycie ich wyników.

Dlaczego sprawdzać konwersje liczbowe w różnicach kodu?

Konwersja może zmienić dokładną arytmetykę w przybliżoną, nawet gdy zwykłe testy nadal przechodzą. Określ reprezentację wymaganą przez aplikację i sprawdź, czy operacje pośrednie oraz zwracane wartości zachowują ją w obsługiwanym zakresie danych wejściowych.

Pobierz dla Windows ↗

SpectrumGorse · Zaktualizowano 2026-10-25