Expansión de logaritmos: producto, cociente y potencia
Expandir logaritmos significa tomar un único logaritmo cuyo argumento está formado por multiplicaciones, divisiones y potencias — por ejemplo, logaritmo en base 2 de x·y/z — y reescribirlo como una suma de logaritmos más simples: log₂(x) + log₂(y) − log₂(z).
Ejecutar — gratis
Corre en su navegador. Gratis y sin límite: sus datos no salen de esta página.
Esta API realiza esa reescritura por usted. Usted envía la base y la lista de factores con sus operaciones, y recibe a cambio la expresión expandida, un término por factor, con los signos y coeficientes correctos. Los argumentos numéricos se validan: un logaritmo solo está definido para argumentos positivos, de modo que cualquier factor nulo o negativo se rechaza con un error claro en lugar de producir una expresión sin sentido.
Qué significa expandir un logaritmo
Las tres leyes de los logaritmos convierten la estructura del interior del argumento en estructura fuera de él. La regla del producto dice que log_b(x·y) es igual a log_b(x) más log_b(y): la multiplicación interna se convierte en suma externa. La regla del cociente dice que log_b(x/y) es igual a log_b(x) menos log_b(y): la división interna se convierte en resta externa. La regla de la potencia dice que log_b(x^n) es igual a n por log_b(x): el exponente interno sale al frente como coeficiente. Expandir un logaritmo consiste en aplicar estas leyes de izquierda a derecha hasta que nada dentro de ningún logaritmo pueda descomponerse más. Los estudiantes se encuentran con esto al simplificar expresiones antes de derivar, al resolver ecuaciones exponenciales y al linealizar datos para un gráfico log-log. La operación es puramente mecánica una vez que se identifica cada factor y cómo entra en el argumento, que es exactamente la razón por la que encaja en una API: usted describe la expresión como una base más una lista de operaciones y factores, y la expansión regresa como una cadena lista para usar, con cada término detallado, su signo, su coeficiente y su argumento.
Cómo describir su expresión a la API
La entrada tiene dos partes. La base es la base del logaritmo: cualquier número positivo distinto de 1, de modo que 2, 10 y e funcionan, mientras que 1, 0 y los negativos se rechazan porque ningún logaritmo real tiene esa base. El array de términos enumera los factores del argumento en orden. Cada término indica una operación — multiplicar, dividir o elevar a una potencia — y un argumento. Un término de multiplicación aporta su logaritmo con signo más, un término de división con signo menos, y un término de potencia con su exponente extraído como coeficiente delante. Así, el logaritmo en base 2 de x·y/z³ son tres términos: multiplicar x, multiplicar y y elevar z al exponente 3, lo que se expande a log₂(x) + log₂(y) − 3·log₂(z). Los argumentos pueden ser simbólicos, como x o precio, cuando se desea la forma algebraica, o numéricos, como 8, cuando se quiere una comprobación concreta. Los argumentos numéricos deben ser positivos; los simbólicos se conservan literalmente porque su signo depende de los valores que se les asignen después. Un exponente negativo en un término de potencia simplemente invierte el signo del término, ya que x elevado a menos n es lo mismo que dividir por x elevado a n.
Por qué importa la validación del dominio
Un logaritmo real solo está definido para argumentos estrictamente positivos. El logaritmo de cero diverge a menos infinito y el logaritmo de un número negativo ni siquiera es un número real, de modo que una expansión construida sobre un factor no positivo sería ruido simbólico que se rompe silenciosamente en el momento en que alguien la evalúa. Este endpoint se niega a producir ese ruido: cuando un argumento numérico es cero o negativo, la llamada falla con un error de entrada no válida que nombra el término infractor, y la llamada no se le cobra. La misma rigurosidad se aplica a la base, que debe ser positiva y distinta de 1, y a los exponentes, que deben ser números finitos: un exponente de cero se rechaza porque el término aportaría el logaritmo de 1, que es cero y casi siempre un error en la entrada. El resultado es determinista: la misma petición devuelve siempre la misma cadena, byte a byte, lo que hace que el endpoint sea seguro de usar dentro de hojas de ejercicios generadas, correctores automáticos y comprobaciones de CI que comparan salidas literalmente. Se ejecuta en nuestro edge sin almacenar nada, y el mismo algoritmo funciona gratis en el navegador de esta página, de modo que usted solo paga $0.002 por llamada cuando lo automatiza.
Qué puede hacer con ella
Generar ejercicios de álgebra resueltos
Envíe una base y una lista de factores e inserte la forma expandida directamente en hojas de ejercicios, cuestionarios o soluciones paso a paso.
Corregir tareas automáticamente
Compare la expresión expandida de un estudiante con la cadena canónica que la API devuelve para la misma base y los mismos términos.
Simplificar antes de derivar
Expanda el logaritmo de un producto o cociente en una suma para que cada término se derive por separado, un paso habitual en los flujos de trabajo de cálculo.
Preguntas frecuentes
¿Cuánto cuesta?
$0.002 por petición. El mismo algoritmo también funciona gratis en su navegador en esta página.
¿Qué bases se aceptan?
Cualquier número positivo excepto 1: 2, 10, e o cualquier otra base válida. Las bases 1, 0 o negativas se rechazan.
¿Los factores pueden ser variables en lugar de números?
Sí. Un argumento puede ser simbólico (x, precio, velocidad) o numérico. Los argumentos numéricos deben ser positivos; los simbólicos se conservan tal como se escriben.
¿Qué ocurre si un argumento es cero o negativo?
La llamada falla con un error de entrada no válida que nombra el término, porque un logaritmo real no está definido ahí. Las llamadas rechazadas no se cobran.
¿Cómo se expanden las potencias?
Un término de potencia con exponente n aporta n veces el logaritmo de su argumento; un exponente negativo invierte el signo del término. Un exponente de 0 se rechaza.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/math/expanding-logarithms \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"base":2,"terms":[{"operation":"multiply","argument":"x"},{"operation":"multiply","argument":"y"},{"operation":"divide","argument":"z"}]}'const res = await fetch("https://api.kit.forhosting.com/math/expanding-logarithms", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"base": 2,
"terms": [
{
"operation": "multiply",
"argument": "x"
},
{
"operation": "multiply",
"argument": "y"
},
{
"operation": "divide",
"argument": "z"
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/math/expanding-logarithms",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"base": 2,
"terms": [
{
"operation": "multiply",
"argument": "x"
},
{
"operation": "multiply",
"argument": "y"
},
{
"operation": "divide",
"argument": "z"
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/math/expanding-logarithms", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"base":2,"terms":[{"operation":"multiply","argument":"x"},{"operation":"multiply","argument":"y"},{"operation":"divide","argument":"z"}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"base":2,"terms":[{"operation":"multiply","argument":"x"},{"operation":"multiply","argument":"y"},{"operation":"divide","argument":"z"}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/math/expanding-logarithms", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"base": 2,
"terms": [
{
"operation": "multiply",
"argument": "x"
},
{
"operation": "multiply",
"argument": "y"
},
{
"operation": "divide",
"argument": "z"
}
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "math.expanding_logarithms",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_terms | 32 |
max_abs | 1000000000000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |